linux.git
6 years agoMerge linux (5.4.13-1) import into refs/heads/workingbranch
Salvatore Bonaccorso [Sun, 19 Jan 2020 09:22:58 +0000 (09:22 +0000)]
Merge linux (5.4.13-1) import into refs/heads/workingbranch

6 years agoovl: permit overlayfs mounts in user namespaces (taints kernel)
Nicolas Schier [Mon, 19 Nov 2018 19:36:14 +0000 (20:36 +0100)]
ovl: permit overlayfs mounts in user namespaces (taints kernel)

Permit overlayfs mounts within user namespaces to allow utilisation of e.g.
unprivileged LXC overlay snapshots.

Except by the Ubuntu community [1], overlayfs mounts in user namespaces are
expected to be a security risk [2] and thus are not enabled on upstream
Linux kernels.  For the non-Ubuntu users that have to stick to unprivileged
overlay-based LXCs, this meant to patch and compile the kernel manually.
Instead, adding the kernel tainting 'permit_mounts_in_userns' module
parameter allows a kind of a user-friendly way to enable the feature.

Testable with:

    sudo modprobe overlay permit_mounts_in_userns=1
    sudo sysctl -w kernel.unprivileged_userns_clone=1
    mkdir -p lower upper work mnt
    unshare --map-root-user --mount \
        mount -t overlay none mnt \
              -o lowerdir=lower,upperdir=upper,workdir=work

[1]: Ubuntu allows unprivileged mounting of overlay filesystem
https://lists.ubuntu.com/archives/kernel-team/2014-February/038091.html

[2]: User namespaces + overlayfs = root privileges
https://lwn.net/Articles/671641/

Signed-off-by: Nicolas Schier <nicolas@fjasle.eu>
Gbp-Pq: Topic debian
Gbp-Pq: Name overlayfs-permit-mounts-in-userns.patch

6 years agowireless: Disable regulatory.db direct loading
Ben Hutchings [Thu, 5 Apr 2018 16:13:52 +0000 (18:13 +0200)]
wireless: Disable regulatory.db direct loading

Forwarded: not-needed
Bug-Debian: https://bugs.debian.org/892229

Don't complain about being unable to load regulatory.db directly.
This is expected until we generate a signing key and update
wireless-regdb to be signed with it.

Gbp-Pq: Topic debian
Gbp-Pq: Name wireless-disable-regulatory.db-direct-loading.patch

6 years ago[PATCH 5/5] libtraceevent: Add dependency on libdl
Sudip Mukherjee [Thu, 26 Dec 2019 22:31:30 +0000 (22:31 +0000)]
[PATCH 5/5] libtraceevent: Add dependency on libdl

Forwarded: https://lore.kernel.org/lkml/20191226224931.3458-1-sudipm.mukherjee@gmail.com/

event-plugin.c is calling dl_*() functions but it is not linked with
libdl. As a result when we use ldd on the generated libtraceevent.so
file, it does not list libdl as one of its dependencies.
Add -ldl explicitly as done in tools/lib/lockdep.

Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name 0005-libtraceevent-Add-dependency-on-libdl.patch

6 years ago[PATCH 4/5] libtraceevent: Allow custom libdir path
Sudip Mukherjee [Sat, 7 Dec 2019 11:14:40 +0000 (11:14 +0000)]
[PATCH 4/5] libtraceevent: Allow custom libdir path

Origin: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c09982f8e2bae80a66232630ec4ba50afacea486

When I use prefix=/usr and try to install libtraceevent in my laptop it
tries to install in /usr/lib64. I am not having any folder as /usr/lib64
and also the debian policy doesnot allow installing in /usr/lib64. It
should be in /usr/lib/x86_64-linux-gnu/.

Quote: No package for a 64 bit architecture may install files in
/usr/lib64/ or in a subdirectory of it.

ref: https://www.debian.org/doc/debian-policy/ch-opersys.html

Make it more flexible by allowing to mention libdir_relative while
installing so that distros can mention the path according to their
policy or use the default one.

Signed-off-by: Sudipm Mukherjee <sudipm.mukherjee@gmail.com>
Reviewed-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Cc: Sudipm Mukherjee <sudipm.mukherjee@gmail.com>
Cc: linux-trace-devel@vger.kernel.org
Link: http://lore.kernel.org/lkml/20191207111440.6574-1-sudipm.mukherjee@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name 0004-libtraceevent-allow-custom-libdir-path.patch

6 years ago[PATCH 1/5] libtraceevent: Fix header installation
Sudip Mukherjee [Thu, 14 Nov 2019 13:37:19 +0000 (13:37 +0000)]
[PATCH 1/5] libtraceevent: Fix header installation

Origin: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=68401a1799fa14cb72c2a129bbefdacd44279772

When we passed some location in DESTDIR, install_headers called
do_install with DESTDIR as part of the second argument.

But do_install is again using '$(DESTDIR_SQ)$2', so as a result the
headers were installed in a location $DESTDIR/$DESTDIR.

In my testing I passed DESTDIR=/home/sudip/test and the headers were
installed in: /home/sudip/test/home/sudip/test/usr/include/traceevent.

Lets remove DESTDIR from the second argument of do_install so that the
headers are installed in the correct location.

Signed-off-by: Sudipm Mukherjee <sudipm.mukherjee@gmail.com>
Reviewed-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Cc: Sudipm Mukherjee <sudipm.mukherjee@gmail.com>
Cc: linux-trace-devel@vger.kernel.org
Link: http://lore.kernel.org/lkml/20191114133719.309-1-sudipm.mukherjee@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name 0001-libtraceevent-Fix-header-installation.patch

6 years agotools/perf: pmu-events: Fix reproducibility
Ben Hutchings [Sun, 25 Aug 2019 12:49:41 +0000 (13:49 +0100)]
tools/perf: pmu-events: Fix reproducibility

Forwarded: https://lore.kernel.org/lkml/20190825131329.naqzd5kwg7mw5d3f@decadent.org.uk/T/#u

jevents.c uses nftw() to enumerate files and outputs the corresponding
C structs in the order they are found.  This makes it sensitive to
directory ordering, so that the perf executable is not reproducible.

To avoid this, store all the files and directories found and then sort
them by their (relative) path.  (This maintains the parent-first
ordering that nftw() promises.)  Then apply the existing callbacks to
them in the sorted order.

Don't both storing the stat buffers as we don't need them.

References: https://tests.reproducible-builds.org/debian/dbdtxt/bullseye/i386/linux_4.19.37-6.diffoscope.txt.gz
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name tools-perf-pmu-events-fix-reproducibility.patch

6 years agousbip: network: Fix unaligned member access
Ben Hutchings [Sun, 18 Aug 2019 15:15:26 +0000 (16:15 +0100)]
usbip: network: Fix unaligned member access

Bug-Debian: https://bugs.debian.org/925766

gcc 9 warns:

usbip_network.c: In function ‘usbip_net_pack_usb_device’:
usbip_network.c:79:32: error: taking address of packed member of ‘struct usbip_usb_device’ may result in an unaligned pointer value [-Werror=address-of-packed-member]
   79 |  usbip_net_pack_uint32_t(pack, &udev->busnum);
      |                                ^~~~~~~~~~~~~

and similarly for other calls to usbip_net_pack_uint{16,32}_t().

These fields are unaligned because they are declared as part of a
packed structure.  Functions operating on the structure will use the
appropriate accessors for unaligned data if necessary, but there
doesn't seem to be a way to declare functions as taking a pointer
to a unaligned scalar.

Instead, change these functions to take a pointer of type void * and
to memcpy() the unaligned value in and out of a local variable.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name usbip-network-fix-unaligned-member-access.patch

6 years agousbip: Fix misuse of strncpy()
Ben Hutchings [Fri, 20 Jul 2018 00:30:24 +0000 (01:30 +0100)]
usbip: Fix misuse of strncpy()

Bug-Debian: https://bugs.debian.org/897802
Forwarded: https://marc.info/?l=linux-usb&m=153213915806258

gcc 8 reports:

usbip_device_driver.c: In function ‘read_usb_vudc_device’:
usbip_device_driver.c:106:2: error: ‘strncpy’ specified bound 256 equals destination size [-Werror=stringop-truncation]
  strncpy(dev->path, path, SYSFS_PATH_MAX);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
usbip_device_driver.c:125:2: error: ‘strncpy’ specified bound 32 equals destination size [-Werror=stringop-truncation]
  strncpy(dev->busid, name, SYSFS_BUS_ID_SIZE);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I'm not convinced it makes sense to truncate the copied strings here,
but since we're already doing so let's ensure they're still null-
terminated.  We can't easily use strlcpy() here, so use snprintf().

usbip_common.c has the same problem.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name usbip-fix-misuse-of-strncpy.patch

6 years agotools/lib/api/fs/fs.c: Fix misuse of strncpy()
Ben Hutchings [Thu, 19 Jul 2018 22:36:52 +0000 (23:36 +0100)]
tools/lib/api/fs/fs.c: Fix misuse of strncpy()

Bug-Debian: https://bugs.debian.org/897802
Forwarded: https://lore.kernel.org/lkml/20180721021026.GQ14131@decadent.org.uk/T/

gcc 8 reports:

In function 'fs__env_override',
    inlined from 'fs__get_mountpoint' at fs/fs.c:228:6:
fs/fs.c:222:2: error: 'strncpy' specified bound 4096 equals destination size [-Werror=stringop-truncation]
  strncpy(fs->path, override_path, sizeof(fs->path));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I'm not convinced it makes sense to truncate the copied string here,
but since we're already doing so let's ensure it's still null-
terminated.  Use strlcpy() instead.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name tools-lib-api-fs-fs.c-fix-misuse-of-strncpy.patch

6 years agocpupower: Fix checks for CPU existence
Ben Hutchings [Thu, 3 Nov 2016 21:25:26 +0000 (15:25 -0600)]
cpupower: Fix checks for CPU existence

Forwarded: https://marc.info/?l=linux-pm&m=149248268214265

Calls to cpufreq_cpu_exists(cpu) were converted to
cpupower_is_cpu_online(cpu) when libcpupower was introduced and the
former function was deleted.  However, cpupower_is_cpu_online() does
not distinguish physically absent and offline CPUs, and does not set
errno.

cpufreq-set has already been fixed (commit c25badc9ceb6).

In cpufreq-bench, which prints an error message for offline CPUs,
properly distinguish and report the zero and negative cases.

Fixes: ac5a181d065d ("cpupower: Add cpuidle parts into library")
Fixes: 53d1cd6b125f ("cpupowerutils: bench - Fix cpu online check")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
[carnil: Update/Refresh patch for 4.14.17: The issue with the
incorrect check has been fixed with upstream commit 53d1cd6b125f.
Keep in the patch the distinction and report for the zero and
negative cases.]

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name cpupower-fix-checks-for-cpu-existence.patch

6 years agolibcpupower: Hide private function
Ben Hutchings [Sat, 1 Dec 2018 19:22:50 +0000 (19:22 +0000)]
libcpupower: Hide private function

cpupower_read_sysfs() (previously known as sysfs_read_file()) is an
internal function in libcpupower and should not be exported when
libcpupower is a shared library.  Change its visibility to "hidden".

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name libcpupower-hide-private-function.patch

6 years agocpupower: Bump soname version
Ben Hutchings [Sun, 19 May 2019 16:17:33 +0000 (17:17 +0100)]
cpupower: Bump soname version

Several functions in the libcpupower API were renamed or removed in
Linux 4.7, and again in 5.1.  This is a backward-incompatible ABI
change, so the library soname should change from libcpupower.so.0 to
libcpupower.so.2.

Fixes: ac5a181d065d ("cpupower: Add cpuidle parts into library")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name cpupower-bump-soname-version.patch

6 years agotools/build: Remove bpf() run-time check at build time
Ben Hutchings [Sun, 21 Feb 2016 15:33:15 +0000 (15:33 +0000)]
tools/build: Remove bpf() run-time check at build time

Forwarded: no

It is not correct to test that a syscall works on the build system's
kernel.  We might be building on an earlier kernel version or with
security restrictions that block bpf().

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name tools-build-remove-bpf-run-time-check-at-build-time.patch

6 years agoRevert "perf build: Fix libunwind feature detection on 32-bit x86"
Ben Hutchings [Fri, 25 Sep 2015 21:50:50 +0000 (22:50 +0100)]
Revert "perf build: Fix libunwind feature detection on 32-bit x86"

Forwarded: no

This reverts commit 05b41775e2edd69a83f592e3534930c934d4038e.
It broke feature detection that was working just fine for us.

Gbp-Pq: Topic bugfix/x86
Gbp-Pq: Name revert-perf-build-fix-libunwind-feature-detection-on.patch

6 years agotools/perf: Remove shebang lines from perf scripts
Ben Hutchings [Fri, 25 Sep 2015 19:09:23 +0000 (20:09 +0100)]
tools/perf: Remove shebang lines from perf scripts

Forwarded: no

perf scripts need to be invoked through perf, not directly through
perl (or other language interpreter).  So including shebang lines in
them is useless and possibly misleading.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name tools-perf-remove-shebangs.patch

6 years agoperf tools: Use $KBUILD_BUILD_TIMESTAMP as man page date
Ben Hutchings [Mon, 13 Jul 2015 19:29:20 +0000 (20:29 +0100)]
perf tools: Use $KBUILD_BUILD_TIMESTAMP as man page date

Forwarded: http://mid.gmane.org/20160517132809.GE7555@decadent.org.uk

This allows man pages to be built reproducibly.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name tools-perf-man-date.patch

6 years agokbuild: Fix recordmcount dependency for OOT modules
Ben Hutchings [Mon, 8 Sep 2014 17:31:24 +0000 (18:31 +0100)]
kbuild: Fix recordmcount dependency for OOT modules

Forwarded: no

We never rebuild anything in-tree when building an out-of-tree
modules, so external modules should not depend on the recordmcount
sources.

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name kbuild-fix-recordmcount-dependency.patch

6 years agousbip: Document TCP wrappers
Ben Hutchings [Sun, 24 Jun 2012 01:51:39 +0000 (02:51 +0100)]
usbip: Document TCP wrappers

Forwarded: no

Add references to TCP wrappers configuration in the manual page.

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name usbip-document-tcp-wrappers.patch

6 years agomodule: Disable matching missing version CRC
Ben Hutchings [Fri, 2 Dec 2016 23:06:18 +0000 (23:06 +0000)]
module: Disable matching missing version CRC

Forwarded: not-needed

This partly reverts commit cd3caefb4663e3811d37cc2afad3cce642d60061.
We want to fail closed if a symbol version CRC is missing, as the
alternative may allow subverting module signing.

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name module-disable-matching-missing-version-crc.patch

6 years agontfs: mark it as broken
Ben Hutchings [Thu, 25 Apr 2019 14:31:33 +0000 (15:31 +0100)]
ntfs: mark it as broken

NTFS has unfixed issues CVE-2018-12929, CVE-2018-12930, and
CVE-2018-12931.  ntfs-3g is a better supported alternative.

Make sure it can't be enabled even in custom kernels.

Gbp-Pq: Topic debian
Gbp-Pq: Name ntfs-mark-it-as-broken.patch

6 years ago[i386/686-pae] PCI: Set pci=nobios by default
Ben Hutchings [Tue, 16 Feb 2016 02:45:42 +0000 (02:45 +0000)]
[i386/686-pae] PCI: Set pci=nobios by default

Forwarded: not-needed

CONFIG_PCI_GOBIOS results in physical addresses 640KB-1MB being mapped
W+X, which is undesirable for security reasons and will result in a
warning at boot now that we enable CONFIG_DEBUG_WX.

This can be overridden using the kernel parameter "pci=nobios", but we
want to disable W+X by default.  Disable PCI BIOS probing by default;
it can still be enabled using "pci=bios".

Gbp-Pq: Topic debian
Gbp-Pq: Name i386-686-pae-pci-set-pci-nobios-by-default.patch

6 years ago[PATCH] KEYS: Make use of platform keyring for module signature verify
Robert Holmes [Tue, 23 Apr 2019 07:39:29 +0000 (07:39 +0000)]
[PATCH] KEYS: Make use of platform keyring for module signature verify

Bug-Debian: https://bugs.debian.org/935945
Origin: https://src.fedoraproject.org/rpms/kernel/raw/master/f/KEYS-Make-use-of-platform-keyring-for-module-signature.patch

This patch completes commit 278311e417be ("kexec, KEYS: Make use of
platform keyring for signature verify") which, while adding the
platform keyring for bzImage verification, neglected to also add
this keyring for module verification.

As such, kernel modules signed with keys from the MokList variable
were not successfully verified.

Signed-off-by: Robert Holmes <robeholmes@gmail.com>
Signed-off-by: Jeremy Cline <jcline@redhat.com>
Gbp-Pq: Topic features/all/db-mok-keyring
Gbp-Pq: Name KEYS-Make-use-of-platform-keyring-for-module-signature.patch

6 years agoMODSIGN: Make shash allocation failure fatal
Ben Hutchings [Sun, 5 May 2019 12:45:06 +0000 (13:45 +0100)]
MODSIGN: Make shash allocation failure fatal

mod_is_hash_blacklisted() currently returns 0 (suceess) if
crypto_alloc_shash() fails.  This should instead be a fatal error,
so unwrap and pass up the error code.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic features/all/db-mok-keyring
Gbp-Pq: Name modsign-make-shash-allocation-failure-fatal.patch

6 years ago[PATCH 4/4] MODSIGN: check the attributes of db and mok
Lee, Chun-Yi [Tue, 13 Mar 2018 10:38:03 +0000 (18:38 +0800)]
[PATCH 4/4] MODSIGN: check the attributes of db and mok

Origin: https://lore.kernel.org/patchwork/patch/933176/

That's better for checking the attributes of db and mok variables
before loading certificates to kernel keyring.

For db and dbx, both of them are authenticated variables. Which
means that they can only be modified by manufacturer's key. So
the kernel should checks EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS
attribute before we trust it.

For mok-rt and mokx-rt, both of them are created by shim boot loader
to forward the mok/mokx content to runtime. They must be runtime-volatile
variables. So kernel should checks that the attributes map did not set
EFI_VARIABLE_NON_VOLATILE bit before we trust it.

Cc: David Howells <dhowells@redhat.com>
Cc: Josh Boyer <jwboyer@fedoraproject.org>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: "Lee, Chun-Yi" <jlee@suse.com>
[Rebased by Luca Boccassi]
[bwh: Forward-ported to 5.0: adjust filename, context]

Gbp-Pq: Topic features/all/db-mok-keyring
Gbp-Pq: Name 0004-MODSIGN-check-the-attributes-of-db-and-mok.patch

6 years ago[PATCH 3/4] MODSIGN: checking the blacklisted hash before loading a kernel module
Lee, Chun-Yi [Tue, 13 Mar 2018 10:38:02 +0000 (18:38 +0800)]
[PATCH 3/4] MODSIGN: checking the blacklisted hash before loading a kernel module

Origin: https://lore.kernel.org/patchwork/patch/933175/

This patch adds the logic for checking the kernel module's hash
base on blacklist. The hash must be generated by sha256 and enrolled
to dbx/mokx.

For example:
sha256sum sample.ko
mokutil --mokx --import-hash $HASH_RESULT

Whether the signature on ko file is stripped or not, the hash can be
compared by kernel.

Cc: David Howells <dhowells@redhat.com>
Cc: Josh Boyer <jwboyer@fedoraproject.org>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: "Lee, Chun-Yi" <jlee@suse.com>
[Rebased by Luca Boccassi]

Gbp-Pq: Topic features/all/db-mok-keyring
Gbp-Pq: Name 0003-MODSIGN-checking-the-blacklisted-hash-before-loading-a-kernel-module.patch

6 years ago[PATCH 2/4] MODSIGN: load blacklist from MOKx
Lee, Chun-Yi [Tue, 13 Mar 2018 10:38:01 +0000 (18:38 +0800)]
[PATCH 2/4] MODSIGN: load blacklist from MOKx

Origin: https://lore.kernel.org/patchwork/patch/933177/

This patch adds the logic to load the blacklisted hash and
certificates from MOKx which is maintained by shim bootloader.

Cc: David Howells <dhowells@redhat.com>
Cc: Josh Boyer <jwboyer@fedoraproject.org>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: "Lee, Chun-Yi" <jlee@suse.com>
[Rebased by Luca Boccassi]
[bwh: Forward-ported to 5.0: adjust filename]

Gbp-Pq: Topic features/all/db-mok-keyring
Gbp-Pq: Name 0002-MODSIGN-load-blacklist-from-MOKx.patch

6 years ago[PATCH 1/5] MODSIGN: do not load mok when secure boot disabled
Lee, Chun-Yi [Tue, 13 Mar 2018 10:37:59 +0000 (18:37 +0800)]
[PATCH 1/5] MODSIGN: do not load mok when secure boot disabled

Origin: https://lore.kernel.org/patchwork/patch/933173/

The mok can not be trusted when the secure boot is disabled. Which
means that the kernel embedded certificate is the only trusted key.

Due to db/dbx are authenticated variables, they needs manufacturer's
KEK for update. So db/dbx are secure when secureboot disabled.

Cc: David Howells <dhowells@redhat.com>
Cc: Josh Boyer <jwboyer@fedoraproject.org>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: "Lee, Chun-Yi" <jlee@suse.com>
[Rebased by Luca Boccassi]
[bwh: Forward-ported to 5.0: adjust filename]

Gbp-Pq: Topic features/all/db-mok-keyring
Gbp-Pq: Name 0001-MODSIGN-do-not-load-mok-when-secure-boot-disabled.patch

6 years ago[PATCH 6/7] Make get_cert_list() not complain about cert lists that aren't present.
Peter Jones [Mon, 2 Oct 2017 22:25:29 +0000 (18:25 -0400)]
[PATCH 6/7] Make get_cert_list() not complain about cert lists that aren't present.

Origin: https://git.kernel.org/pub/scm/linux/kernel/git/jforbes/linux.git/commit/?id=0f4d5c7b49b45e7cf038bb769e33451b78a6445d

Signed-off-by: Peter Jones <pjones@redhat.com>
[bwh: Forward-ported to 5.0: adjust filename, context]

Gbp-Pq: Topic features/all/db-mok-keyring
Gbp-Pq: Name 0006-Make-get_cert_list-not-complain-about-cert-lists-tha.patch

6 years agolockdown: Refer to Debian wiki until manual page exists
Ben Hutchings [Sat, 20 Apr 2019 23:17:13 +0000 (00:17 +0100)]
lockdown: Refer to Debian wiki until manual page exists

Forwarded: not-needed

The lockdown denial log message currently refers to a
"kernel_lockdown.7" manual page, which is supposed to document it.
That manual page hasn't been accepted by the man-pages project and
doesn't even seem to have been submitted yet.  For now, refer to the
Debian wiki.

Gbp-Pq: Topic features/all/lockdown
Gbp-Pq: Name lockdown-refer-to-debian-wiki-until-manual-page-exists.patch

6 years agoarm64: add kernel config option to lock down when in Secure Boot mode
Linn Crosetto [Tue, 30 Aug 2016 17:54:38 +0000 (11:54 -0600)]
arm64: add kernel config option to lock down when in Secure Boot mode

Bug-Debian: https://bugs.debian.org/831827
Forwarded: no

Add a kernel configuration option to lock down the kernel, to restrict
userspace's ability to modify the running kernel when UEFI Secure Boot is
enabled. Based on the x86 patch by Matthew Garrett.

Determine the state of Secure Boot in the EFI stub and pass this to the
kernel using the FDT.

Signed-off-by: Linn Crosetto <linn@hpe.com>
[bwh: Forward-ported to 4.10: adjust context]
[Lukas Wunner: Forward-ported to 4.11: drop parts applied upstream]
[bwh: Forward-ported to 4.15 and lockdown patch set:
 - Pass result of efi_get_secureboot() in stub through to
   efi_set_secure_boot() in main kernel
 - Use lockdown API and naming]
[bwh: Forward-ported to 4.19.3: adjust context in update_fdt()]
[dannf: Moved init_lockdown() call after uefi_init(), fixing SB detection]
[bwh: Drop call to init_lockdown(), as efi_set_secure_boot() now calls this]

Gbp-Pq: Topic features/all/lockdown
Gbp-Pq: Name arm64-add-kernel-config-option-to-lock-down-when.patch

6 years agomtd: phram,slram: Disable when the kernel is locked down
Ben Hutchings [Fri, 30 Aug 2019 14:54:24 +0000 (15:54 +0100)]
mtd: phram,slram: Disable when the kernel is locked down

Forwarded: https://lore.kernel.org/linux-security-module/20190830154720.eekfjt6c4jzvlbfz@decadent.org.uk/

These drivers allow mapping arbitrary memory ranges as MTD devices.
This should be disabled to preserve the kernel's integrity when it is
locked down.

* Add the HWPARAM flag to the module parameters
* When slram is built-in, it uses __setup() to read kernel parameters,
  so add an explicit check security_locked_down() check

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Cc: Matthew Garrett <mjg59@google.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Joern Engel <joern@lazybastard.org>
Cc: linux-mtd@lists.infradead.org
Gbp-Pq: Topic features/all/lockdown
Gbp-Pq: Name mtd-disable-slram-and-phram-when-locked-down.patch

6 years ago[18/18] Enable cold boot attack mitigation
Matthew Garrett [Tue, 12 Jan 2016 20:51:27 +0000 (12:51 -0800)]
[18/18] Enable cold boot attack mitigation

Origin: https://github.com/mjg59/linux/commit/02d999574936dd234a508c0112a0200c135a5c34

[Lukas Wunner: Forward-ported to 4.11: adjust context]

Gbp-Pq: Topic features/all/lockdown
Gbp-Pq: Name enable-cold-boot-attack-mitigation.patch

6 years ago[02/30] Add a SysRq option to lift kernel lockdown
Kyle McMartin [Mon, 18 Feb 2019 12:44:57 +0000 (12:44 +0000)]
[02/30] Add a SysRq option to lift kernel lockdown

Origin: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/commit?id=a420ebff9e6d0153119096706918e3925ea860fc

Make an option to provide a sysrq key that will lift the kernel lockdown,
thereby allowing the running kernel image to be accessed and modified.

On x86 this is triggered with SysRq+x, but this key may not be available on
all arches, so it is set by setting LOCKDOWN_LIFT_KEY in asm/setup.h.
Since this macro must be defined in an arch to be able to use this facility
for that arch, the Kconfig option is restricted to arches that support it.

Signed-off-by: Kyle McMartin <kyle@redhat.com>
Signed-off-by: David Howells <dhowells@redhat.com>
cc: x86@kernel.org
[bwh: Forward-ported to upstream lockdown:
 - Change config dependency to SECURITY_LOCKDOWN_LSM
 - Compare kernel_locked_down with LOCKDOWN_NONE instead of treating it
   as a bool
 - Adjust filenames, context]

Gbp-Pq: Topic features/all/lockdown
Gbp-Pq: Name add-a-sysrq-option-to-lift-kernel-lockdown.patch

6 years agoefi: Lock down the kernel if booted in secure boot mode
Ben Hutchings [Tue, 10 Sep 2019 10:54:28 +0000 (11:54 +0100)]
efi: Lock down the kernel if booted in secure boot mode

Based on an earlier patch by David Howells, who wrote the following
description:

> UEFI Secure Boot provides a mechanism for ensuring that the firmware will
> only load signed bootloaders and kernels.  Certain use cases may also
> require that all kernel modules also be signed.  Add a configuration option
> that to lock down the kernel - which includes requiring validly signed
> modules - if the kernel is secure-booted.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic features/all/lockdown
Gbp-Pq: Name efi-lock-down-the-kernel-if-booted-in-secure-boot-mo.patch

6 years ago[28/30] efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode
David Howells [Mon, 18 Feb 2019 12:45:03 +0000 (12:45 +0000)]
[28/30] efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode

Origin: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/commit?id=a5d70c55c603233c192b375f72116a395909da28

UEFI machines can be booted in Secure Boot mode.  Add an EFI_SECURE_BOOT
flag that can be passed to efi_enabled() to find out whether secure boot is
enabled.

Move the switch-statement in x86's setup_arch() that inteprets the
secure_boot boot parameter to generic code and set the bit there.

Suggested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: David Howells <dhowells@redhat.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
cc: linux-efi@vger.kernel.org

Gbp-Pq: Topic features/all/lockdown
Gbp-Pq: Name efi-add-an-efi_secure_boot-flag-to-indicate-secure-b.patch

6 years agoPartially revert "net: socket: implement 64-bit timestamps"
Ben Hutchings [Tue, 20 Aug 2019 17:12:35 +0000 (18:12 +0100)]
Partially revert "net: socket: implement 64-bit timestamps"

The introduction of SIOCGSTAMP{,NS}_OLD and move of SICOGSTAMP{,NS} to
a different header has caused build failures for various user-space
programs including qemu and suricata.  It also causes a test failure
for glibc.

For now, remove the _OLD suffix on the old ioctl numbers and require
programs using 64-bit timestamps to explicitly use SIOCGSTAMP{,NS}_NEW.

References: https://lore.kernel.org/lkml/af0eb47a-5b98-1bd9-3e8d-652e7f28b01f@de.ibm.com/
References: https://bugs.debian.org/934316
References: https://ci.debian.net/data/autopkgtest/testing/amd64/g/glibc/2772289/log.gz
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name partially-revert-net-socket-implement-64-bit-timestamps.patch

6 years agoRevert "objtool: Fix CONFIG_STACK_VALIDATION=y warning for out-of-tree modules"
Ben Hutchings [Sun, 14 Jan 2018 19:27:18 +0000 (19:27 +0000)]
Revert "objtool: Fix CONFIG_STACK_VALIDATION=y warning for out-of-tree modules"

This reverts commit 9f0c18aec620bc9d82268b3cb937568dd07b43ff.  This
check doesn't make sense for OOT modules as they should always use
a pre-built objtool.

Gbp-Pq: Topic debian
Gbp-Pq: Name revert-objtool-fix-config_stack_validation-y-warning.patch

6 years agoPartially revert "usb: Kconfig: using select for USB_COMMON dependency"
Ben Hutchings [Wed, 11 Jan 2017 04:30:40 +0000 (04:30 +0000)]
Partially revert "usb: Kconfig: using select for USB_COMMON  dependency"

Forwarded: https://marc.info/?l=linux-usb&m=149248300414300

This reverts commit cb9c1cfc86926d0e86d19c8e34f6c23458cd3478 for
USB_LED_TRIG.  This config symbol has bool type and enables extra code
in usb_common itself, not a separate driver.  Enabling it should not
force usb_common to be built-in!

Fixes: cb9c1cfc8692 ("usb: Kconfig: using select for USB_COMMON dependency")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name partially-revert-usb-kconfig-using-select-for-usb_co.patch

6 years agofs: Add MODULE_SOFTDEP declarations for hard-coded crypto drivers
Ben Hutchings [Wed, 13 Apr 2016 20:48:06 +0000 (21:48 +0100)]
fs: Add MODULE_SOFTDEP declarations for hard-coded crypto drivers

Bug-Debian: https://bugs.debian.org/819725
Forwarded: http://mid.gmane.org/20160517133631.GF7555@decadent.org.uk

This helps initramfs builders and other tools to find the full
dependencies of a module.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
[Lukas Wunner: Forward-ported to 4.11: drop parts applied upstream]

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name fs-add-module_softdep-declarations-for-hard-coded-cr.patch

6 years agophy/marvell: disable 4-port phys
Ian Campbell [Wed, 20 Nov 2013 08:30:14 +0000 (08:30 +0000)]
phy/marvell: disable 4-port phys

Bug-Debian: https://bugs.debian.org/723177
Forwarded: http://thread.gmane.org/gmane.linux.debian.devel.bugs.general/1107774/

The Marvell PHY was originally disabled because it can cause networking
failures on some systems. According to Lennert Buytenhek this is because some
of the variants added did not share the same register layout. Since the known
cases are all 4-ports disable those variants (indicated by a 4 in the
penultimate position of the model name) until they can be audited for
correctness.

[bwh: Also #if-out the init functions for these PHYs to avoid
 compiler warnings]

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name disable-some-marvell-phys.patch

6 years agox86: Make x32 syscall support conditional on a kernel parameter
Ben Hutchings [Mon, 12 Feb 2018 23:59:26 +0000 (23:59 +0000)]
x86: Make x32 syscall support conditional on a kernel parameter

Bug-Debian: https://bugs.debian.org/708070
Forwarded: https://lore.kernel.org/lkml/1415245982.3398.53.camel@decadent.org.uk/T/#u

Enabling x32 in the standard amd64 kernel would increase its attack
surface while provide no benefit to the vast majority of its users.
No-one seems interested in regularly checking for vulnerabilities
specific to x32 (at least no-one with a white hat).

Still, adding another flavour just to turn on x32 seems wasteful.  And
the only differences on syscall entry are a few instructions that mask
out the x32 flag and compare the syscall number.

Use a static key to control whether x32 syscalls are really enabled, a
Kconfig parameter to set its default value and a kernel parameter
"syscall.x32" to change it at boot time.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic features/x86
Gbp-Pq: Name x86-make-x32-syscall-support-conditional.patch

6 years agox86: memtest: WARN if bad RAM found
Ben Hutchings [Mon, 5 Dec 2011 04:00:58 +0000 (04:00 +0000)]
x86: memtest: WARN if bad RAM found

Bug-Debian: https://bugs.debian.org/613321
Forwarded: http://thread.gmane.org/gmane.linux.kernel/1286471

Since this is not a particularly thorough test, if we find any bad
bits of RAM then there is a fair chance that there are other bad bits
we fail to detect.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic features/x86
Gbp-Pq: Name x86-memtest-WARN-if-bad-RAM-found.patch

6 years agoMIPS: Loongson 3: Add Loongson LS3A RS780E 1-way machine definition
Aurelien Jarno [Sun, 20 Jul 2014 17:16:31 +0000 (19:16 +0200)]
MIPS: Loongson 3: Add Loongson LS3A RS780E 1-way machine definition

Forwarded: no

Add a Loongson LS3A RS780E 1-way machine definition, which only differs
from other Loongson 3 based machines by the UART base clock speed.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
[bwh: Forward-ported to 4.2]

Gbp-Pq: Topic features/mips
Gbp-Pq: Name MIPS-Loongson-3-Add-Loongson-LS3A-RS780E-1-way-machi.patch

6 years agolibbpf: fix readelf output parsing on powerpc with recent binutils
Aurelien Jarno [Sun, 1 Dec 2019 19:35:55 +0000 (20:35 +0100)]
libbpf: fix readelf output parsing on powerpc with recent binutils

Origin: https://lore.kernel.org/patchwork/patch/1161149/

On powerpc with recent versions of binutils, readelf outputs an extra
field when dumping the symbols of an object file. For example:

    35: 0000000000000838    96 FUNC    LOCAL  DEFAULT [<localentry>: 8]     1 btf_is_struct

The extra "[<localentry>: 8]" prevents the GLOBAL_SYM_COUNT variable to
be computed correctly and causes the checkabi target to fail.

Fix that by looking for the symbol name in the last field instead of the
8th one. This way it should also cope with future extra fields.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Gbp-Pq: Topic bugfix/ppc64el
Gbp-Pq: Name libbpf-fix-readelf-output-parsing-on-powerpc-with-re.patch

6 years agox86-32: Disable 3D-Now in generic config
Ben Hutchings [Tue, 25 Sep 2018 18:44:13 +0000 (19:44 +0100)]
x86-32: Disable 3D-Now in generic config

We want the 686 flavour to run on Geode LX and similar AMD family 5
CPUs as well as family 6 and higher CPUs.  This used to work with
CONFIG_M686=y.  However commit 25d76ac88821 "x86/Kconfig: Explicitly
enumerate i686-class CPUs in Kconfig" in Linux 4.16 has made the
kernel require family 6 or higher.

It looks like a sensible choice would be to enable CONFIG_MGEODE_LX
and CONFIG_X86_GENERIC (for more generic optimisations), but this
currently enables CONFIG_X86_USE_3D_NOW which will cause the kernel to
crash on CPUs without the AMD-specific 3D-Now instructions.

Make CONFIG_X86_USE_3DNOW depend on CONFIG_X86_GENERIC being disabled.

Gbp-Pq: Topic bugfix/x86
Gbp-Pq: Name x86-32-disable-3dnow-in-generic-config.patch

6 years agoarm64/acpi: Add fixup for HPE m400 quirks
Geoff Levand [Wed, 13 Jun 2018 17:56:08 +0000 (10:56 -0700)]
arm64/acpi: Add fixup for HPE m400 quirks

Forwarded: https://patchwork.codeaurora.org/patch/547277/

Adds a new ACPI init routine acpi_fixup_m400_quirks that adds
a work-around for HPE ProLiant m400 APEI firmware problems.

The work-around disables APEI when CONFIG_ACPI_APEI is set and
m400 firmware is detected.  Without this fixup m400 systems
experience errors like these on startup:

  [Hardware Error]: Hardware error from APEI Generic Hardware Error Source: 2
  [Hardware Error]: event severity: fatal
  [Hardware Error]:  Error 0, type: fatal
  [Hardware Error]:   section_type: memory error
  [Hardware Error]:   error_status: 0x0000000000001300
  [Hardware Error]:   error_type: 10, invalid address
  Kernel panic - not syncing: Fatal hardware error!

Signed-off-by: Geoff Levand <geoff@infradead.org>
[bwh: Adjust context to apply to Linux 4.19]

Gbp-Pq: Topic bugfix/arm64
Gbp-Pq: Name arm64-acpi-Add-fixup-for-HPE-m400-quirks.patch

6 years agopowerpc/boot: Fix missing crc32poly.h when building with KERNEL_XZ
Krzysztof Kozlowski [Wed, 29 Aug 2018 07:32:23 +0000 (09:32 +0200)]
powerpc/boot: Fix missing crc32poly.h when building with KERNEL_XZ

Origin: https://patchwork.ozlabs.org/patch/963258/

After commit faa16bc404d7 ("lib: Use existing define with
polynomial") the lib/xz/xz_crc32.c includes a header from include/linux
directory thus any other user of this code should define proper include
path.

This fixes the build error on powerpc with CONFIG_KERNEL_XZ:

    In file included from ../arch/powerpc/boot/../../../lib/decompress_unxz.c:233:0,
                     from ../arch/powerpc/boot/decompress.c:42:
    ../arch/powerpc/boot/../../../lib/xz/xz_crc32.c:18:29: fatal error: linux/crc32poly.h: No such file or directory

Reported-by: Michal Kubecek <mkubecek@suse.cz>
Fixes: faa16bc404d7 ("lib: Use existing define with polynomial")
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: Meelis Roos <mroos@linux.ee>
Tested-by: Michal Kubecek <mkubecek@suse.cz>
Gbp-Pq: Topic bugfix/powerpc
Gbp-Pq: Name powerpc-boot-fix-missing-crc32poly.h-when-building-with-kernel_xz.patch

6 years agoARM: mm: Export __sync_icache_dcache() for xen-privcmd
Ben Hutchings [Wed, 11 Jul 2018 22:40:55 +0000 (23:40 +0100)]
ARM: mm: Export __sync_icache_dcache() for xen-privcmd

Forwarded: https://marc.info/?l=linux-arm-kernel&m=153134944429241

The xen-privcmd driver, which can be modular, calls set_pte_at()
which in turn may call __sync_icache_dcache().

The call to __sync_icache_dcache() may be optimised out because it is
conditional on !pte_special(), and xen-privcmd calls pte_mkspecial().
However, in a non-LPAE configuration there is no "special" bit and the
call is really unconditional.

Fixes: 3ad0876554ca ("xen/privcmd: add IOCTL_PRIVCMD_MMAP_RESOURCE")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/arm
Gbp-Pq: Name arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch

6 years agosh: Do not use hyphen in exported variable names
Ben Hutchings [Sat, 19 Aug 2017 20:42:09 +0000 (21:42 +0100)]
sh: Do not use hyphen in exported variable names

Forwarded: https://marc.info/?l=linux-sh&m=150317827322995&w=2

arch/sh/Makefile defines and exports ld-bfd to be used by
arch/sh/boot/Makefile and arch/sh/boot/compressed/Makefile.  Similarly
arch/sh/boot/Makefile defines and exports suffix-y to be used by
arch/sh/boot/compressed/Makefile.  However some shells, including
dash, will not pass through environment variables whose name includes
a hyphen.  Usually GNU make does not use a shell to recurse, but if
e.g. $(srctree) contains '~' it will use a shell here.

Rename these variables to ld_bfd and suffix_y.

References: https://buildd.debian.org/status/fetch.php?pkg=linux&arch=sh4&ver=4.13%7Erc5-1%7Eexp1&stamp=1502943967&raw=0
Fixes: ef9b542fce00 ("sh: bzip2/lzma uImage support.")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/sh
Gbp-Pq: Name sh-boot-do-not-use-hyphen-in-exported-variable-name.patch

6 years agoperf tools: Fix unwind build on i386
Ben Hutchings [Sat, 22 Jul 2017 16:37:33 +0000 (17:37 +0100)]
perf tools: Fix unwind build on i386

Forwarded: no

EINVAL may not be defined when building unwind-libunwind.c with
REMOTE_UNWIND_LIBUNWIND, resulting in a compiler error in
LIBUNWIND__ARCH_REG_ID().  Its only caller, access_reg(), only checks
for a negative return value and doesn't care what it is.  So change
-EINVAL to -1.

Fixes: 52ffe0ff02fc ("Support x86(32-bit) cross platform callchain unwind.")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/x86
Gbp-Pq: Name perf-tools-fix-unwind-build-on-i386.patch

6 years agoarm64: dts: rockchip: correct voltage selector on Firefly-RK3399
Heinrich Schuchardt [Mon, 4 Jun 2018 17:15:23 +0000 (19:15 +0200)]
arm64: dts: rockchip: correct voltage selector on Firefly-RK3399

Bug-Debian: https://bugs.debian.org/900799
Origin: https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip.git/patch/?id=710e8c4a54be82ee8a97324e7b4330bf191e08bf

Without this patch the Firefly-RK3399 board boot process hangs after these
lines:

   fan53555-regulator 0-0040: FAN53555 Option[8] Rev[1] Detected!
   fan53555-reg: supplied by vcc_sys
   vcc1v8_s3: supplied by vcc_1v8

Blacklisting driver fan53555 allows booting.

The device tree uses a value of fcs,suspend-voltage-selector different to
any other board.

Changing this setting to the usual value is sufficient to enable booting
and also matches the value used in the vendor kernel.

Fixes: 171582e00db1 ("arm64: dts: rockchip: add support for firefly-rk3399 board")
Cc: stable@vger.kernel.org
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Gbp-Pq: Topic bugfix/arm64
Gbp-Pq: Name dts-rockchip-correct-voltage-selector-firefly-RK3399.patch

6 years agoARM: dts: kirkwood: Fix SATA pinmux-ing for TS419
Ben Hutchings [Fri, 17 Feb 2017 01:30:30 +0000 (01:30 +0000)]
ARM: dts: kirkwood: Fix SATA pinmux-ing for TS419

Forwarded: https://www.spinics.net/lists/arm-kernel/msg563610.html
Bug-Debian: https://bugs.debian.org/855017

The old board code for the TS419 assigns MPP pins 15 and 16 as SATA
activity signals (and none as SATA presence signals).  Currently the
device tree assigns the SoC's default pinmux groups for SATA, which
conflict with the second Ethernet port.

Reported-by: gmbh@gazeta.pl
Tested-by: gmbh@gazeta.pl
References: https://bugs.debian.org/855017
Cc: stable@vger.kernel.org # 3.15+
Fixes: 934b524b3f49 ("ARM: Kirkwood: Add DT description of QNAP 419")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic bugfix/arm
Gbp-Pq: Name arm-dts-kirkwood-fix-sata-pinmux-ing-for-ts419.patch

6 years agobtrfs: warn about RAID5/6 being experimental at mount time
Adam Borowski [Tue, 28 Mar 2017 14:55:05 +0000 (16:55 +0200)]
btrfs: warn about RAID5/6 being experimental at mount time

Bug-Debian: https://bugs.debian.org/863290
Origin: https://bugs.debian.org/863290#5

Too many people come complaining about losing their data -- and indeed,
there's no warning outside a wiki and the mailing list tribal knowledge.
Message severity chosen for consistency with XFS -- "alert" makes dmesg
produce nice red background which should get the point across.

Signed-off-by: Adam Borowski <kilobyte@angband.pl>
[bwh: Also add_taint() so this is flagged in bug reports]

Gbp-Pq: Topic debian
Gbp-Pq: Name btrfs-warn-about-raid5-6-being-experimental-at-mount.patch

6 years agofanotify: Taint on use of FANOTIFY_ACCESS_PERMISSIONS
Ben Hutchings [Wed, 13 Jul 2016 00:37:22 +0000 (01:37 +0100)]
fanotify: Taint on use of FANOTIFY_ACCESS_PERMISSIONS

Forwarded: not-needed

Various free and proprietary AV products use this feature and users
apparently want it.  But punting access checks to userland seems like
an easy way to deadlock the system, and there will be nothing we can
do about that.  So warn and taint the kernel if this feature is
actually used.

Gbp-Pq: Topic debian
Gbp-Pq: Name fanotify-taint-on-use-of-fanotify_access_permissions.patch

6 years agofjes: Disable auto-loading
Ben Hutchings [Sat, 18 Mar 2017 20:47:58 +0000 (20:47 +0000)]
fjes: Disable auto-loading

Bug-Debian: https://bugs.debian.org/853976
Forwarded: no

fjes matches a generic ACPI device ID, and relies on its probe
function to distinguish whether that really corresponds to a supported
device.  Very few system will need the driver and it wastes memory on
all the other systems where the same device ID appears, so disable
auto-loading.

Gbp-Pq: Topic debian
Gbp-Pq: Name fjes-disable-autoload.patch

6 years agoviafb: Autoload on OLPC XO 1.5 only
Ben Hutchings [Sat, 20 Apr 2013 14:52:02 +0000 (15:52 +0100)]
viafb: Autoload on OLPC XO 1.5 only

Bug-Debian: https://bugs.debian.org/705788
Forwarded: no

It appears that viafb won't work automatically on all the boards for
which it has a PCI device ID match.  Currently, it is blacklisted by
udev along with most other framebuffer drivers, so this doesn't matter
much.

However, this driver is required for console support on the XO 1.5.
We need to allow it to be autoloaded on this model only, and then
un-blacklist it in udev.

Gbp-Pq: Topic bugfix/x86
Gbp-Pq: Name viafb-autoload-on-olpc-xo1.5-only.patch

6 years agosnd-pcsp: Disable autoload
Ben Hutchings [Wed, 5 Feb 2014 23:01:30 +0000 (23:01 +0000)]
snd-pcsp: Disable autoload

Forwarded: not-needed
Bug-Debian: https://bugs.debian.org/697709

There are two drivers claiming the platform:pcspkr device:
- pcspkr creates an input(!) device that can only beep
- snd-pcsp creates an equivalent input device plus a PCM device that can
  play barely recognisable renditions of sampled sound

snd-pcsp is blacklisted by the alsa-base package, but not everyone
installs that.  On PCs where no sound is wanted at all, both drivers
will still be loaded and one or other will complain that it couldn't
claim the relevant I/O range.

In case anyone finds snd-pcsp useful, we continue to build it.  But
remove the alias, to ensure it's not loaded where it's not wanted.

Gbp-Pq: Topic debian
Gbp-Pq: Name snd-pcsp-disable-autoload.patch

6 years agocdc_ncm,cdc_mbim: Use NCM by default
Ben Hutchings [Sun, 31 Mar 2013 02:58:04 +0000 (03:58 +0100)]
cdc_ncm,cdc_mbim: Use NCM by default

Forwarded: not-needed

Devices that support both NCM and MBIM modes should be kept in NCM
mode unless there is userland support for MBIM.

Set the default value of cdc_ncm.prefer_mbim to false and leave it to
userland (modem-manager) to override this with a modprobe.conf file
once it's ready to speak MBIM.

Gbp-Pq: Topic debian
Gbp-Pq: Name cdc_ncm-cdc_mbim-use-ncm-by-default.patch

6 years agointel-iommu: Add Kconfig option to exclude iGPU by default
Ben Hutchings [Tue, 20 Aug 2019 23:32:16 +0000 (00:32 +0100)]
intel-iommu: Add Kconfig option to exclude iGPU by default

Bug-Debian: https://bugs.debian.org/935270
Bug-Kali: https://bugs.kali.org/view.php?id=5644

There is still laptop firmware that touches the integrated GPU behind
the operating system's back, and doesn't say so in the RMRR table.
Enabling the IOMMU for all devices causes breakage.

Replace CONFIG_INTEL_IOMMU_DEFAULT_ON with a 3-way choice
corresponding to "on", "off", and "on,intgpu_off".

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic features/x86
Gbp-Pq: Name intel-iommu-add-kconfig-option-to-exclude-igpu-by-default.patch

6 years agointel-iommu: Add option to exclude integrated GPU only
Ben Hutchings [Tue, 20 Aug 2019 23:05:30 +0000 (00:05 +0100)]
intel-iommu: Add option to exclude integrated GPU only

Bug-Debian: https://bugs.debian.org/935270
Bug-Kali: https://bugs.kali.org/view.php?id=5644

There is still laptop firmware that touches the integrated GPU behind
the operating system's back, and doesn't say so in the RMRR table.
Enabling the IOMMU for all devices causes breakage, but turning it off
for all graphics devices seems like a major weakness.

Add an option, intel_iommu=igpu_off, to exclude only integrated GPUs
from remapping.  This is a narrower exclusion than igfx_off: it only
affects Intel devices on the root bus.  Devices attached through an
external port (Thunderbolt or ExpressCard) won't be on the root bus.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic features/x86
Gbp-Pq: Name intel-iommu-add-option-to-exclude-integrated-gpu-only.patch

6 years agosecurity,perf: Allow further restriction of perf_event_open
Ben Hutchings [Mon, 11 Jan 2016 15:23:55 +0000 (15:23 +0000)]
security,perf: Allow further restriction of perf_event_open

Forwarded: https://lkml.org/lkml/2016/1/11/587

When kernel.perf_event_open is set to 3 (or greater), disallow all
access to performance events by users without CAP_SYS_ADMIN.
Add a Kconfig symbol CONFIG_SECURITY_PERF_EVENTS_RESTRICT that
makes this value the default.

This is based on a similar feature in grsecurity
(CONFIG_GRKERNSEC_PERF_HARDEN).  This version doesn't include making
the variable read-only.  It also allows enabling further restriction
at run-time regardless of whether the default is changed.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic features/all
Gbp-Pq: Name security-perf-allow-further-restriction-of-perf_event_open.patch

6 years agoadd sysctl to disallow unprivileged CLONE_NEWUSER by default
Serge Hallyn [Fri, 31 May 2013 18:12:12 +0000 (19:12 +0100)]
add sysctl to disallow unprivileged CLONE_NEWUSER by default

Origin: http://kernel.ubuntu.com/git?p=serge%2Fubuntu-saucy.git;a=commit;h=5c847404dcb2e3195ad0057877e1422ae90892b8

add sysctl to disallow unprivileged CLONE_NEWUSER by default

This is a short-term patch.  Unprivileged use of CLONE_NEWUSER
is certainly an intended feature of user namespaces.  However
for at least saucy we want to make sure that, if any security
issues are found, we have a fail-safe.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
[bwh: Remove unneeded binary sysctl bits]

Gbp-Pq: Topic debian
Gbp-Pq: Name add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by-default.patch

6 years agoyama: Disable by default
Ben Hutchings [Wed, 19 Jun 2013 03:35:28 +0000 (04:35 +0100)]
yama: Disable by default

Bug-Debian: https://bugs.debian.org/712740
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name yama-disable-by-default.patch

6 years agosched: Do not enable autogrouping by default
Ben Hutchings [Wed, 16 Mar 2011 03:17:06 +0000 (03:17 +0000)]
sched: Do not enable autogrouping by default

Forwarded: not-needed

We want to provide the option of autogrouping but without enabling
it by default yet.

Gbp-Pq: Topic debian
Gbp-Pq: Name sched-autogroup-disabled.patch

6 years agofs: Enable link security restrictions by default
Ben Hutchings [Fri, 2 Nov 2012 05:32:06 +0000 (05:32 +0000)]
fs: Enable link security restrictions by default

Bug-Debian: https://bugs.debian.org/609455
Forwarded: not-needed

This reverts commit 561ec64ae67ef25cac8d72bb9c4bfc955edfd415
('VFS: don't do protected {sym,hard}links by default').

Gbp-Pq: Topic debian
Gbp-Pq: Name fs-enable-link-security-restrictions-by-default.patch

6 years agohamradio: Disable auto-loading as mitigation against local exploits
Ben Hutchings [Sun, 4 Aug 2019 23:29:11 +0000 (00:29 +0100)]
hamradio: Disable auto-loading as mitigation against local exploits

Forwarded: not-needed

We can mitigate the effect of vulnerabilities in obscure protocols by
preventing unprivileged users from loading the modules, so that they
are only exploitable on systems where the administrator has chosen to
load the protocol.

The 'ham' radio protocols (ax25, netrom, rose) are not actively
maintained or widely used.  Therefore disable auto-loading.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic debian
Gbp-Pq: Name hamradio-disable-auto-loading-as-mitigation-against-local-exploits.patch

6 years agodccp: Disable auto-loading as mitigation against local exploits
Ben Hutchings [Thu, 16 Feb 2017 19:09:17 +0000 (19:09 +0000)]
dccp: Disable auto-loading as mitigation against local exploits

Forwarded: not-needed

We can mitigate the effect of vulnerabilities in obscure protocols by
preventing unprivileged users from loading the modules, so that they
are only exploitable on systems where the administrator has chosen to
load the protocol.

The 'dccp' protocol is not actively maintained or widely used.
Therefore disable auto-loading.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic debian
Gbp-Pq: Name dccp-disable-auto-loading-as-mitigation-against-local-exploits.patch

6 years ago[PATCH] decnet: Disable auto-loading as mitigation against local exploits
Ben Hutchings [Sat, 20 Nov 2010 02:24:55 +0000 (02:24 +0000)]
[PATCH] decnet: Disable auto-loading as mitigation against local exploits

Forwarded: not-needed

Recent review has revealed several bugs in obscure protocol
implementations that can be exploited by local users for denial of
service or privilege escalation.  We can mitigate the effect of any
remaining vulnerabilities in such protocols by preventing unprivileged
users from loading the modules, so that they are only exploitable on
systems where the administrator has chosen to load the protocol.

The 'decnet' protocol is unmaintained and of mostly historical
interest, and the user-space support package 'dnet-common' loads the
module explicitly.  Therefore disable auto-loading.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic debian
Gbp-Pq: Name decnet-Disable-auto-loading-as-mitigation-against-lo.patch

6 years ago[PATCH 1/3] rds: Disable auto-loading as mitigation against local exploits
Ben Hutchings [Fri, 19 Nov 2010 02:12:48 +0000 (02:12 +0000)]
[PATCH 1/3] rds: Disable auto-loading as mitigation against local exploits

Forwarded: not-needed

Recent review has revealed several bugs in obscure protocol
implementations that can be exploited by local users for denial of
service or privilege escalation.  We can mitigate the effect of any
remaining vulnerabilities in such protocols by preventing unprivileged
users from loading the modules, so that they are only exploitable on
systems where the administrator has chosen to load the protocol.

The 'rds' protocol is one such protocol that has been found to be
vulnerable, and which was not present in the 'lenny' kernel.
Therefore disable auto-loading.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic debian
Gbp-Pq: Name rds-Disable-auto-loading-as-mitigation-against-local.patch

6 years ago[PATCH 2/3] af_802154: Disable auto-loading as mitigation against local exploits
Ben Hutchings [Fri, 19 Nov 2010 02:12:48 +0000 (02:12 +0000)]
[PATCH 2/3] af_802154: Disable auto-loading as mitigation against local exploits

Forwarded: not-needed

Recent review has revealed several bugs in obscure protocol
implementations that can be exploited by local users for denial of
service or privilege escalation.  We can mitigate the effect of any
remaining vulnerabilities in such protocols by preventing unprivileged
users from loading the modules, so that they are only exploitable on
systems where the administrator has chosen to load the protocol.

The 'af_802154' (IEEE 802.15.4) protocol is not widely used, was
not present in the 'lenny' kernel, and seems to receive only sporadic
maintenance.  Therefore disable auto-loading.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Gbp-Pq: Topic debian
Gbp-Pq: Name af_802154-Disable-auto-loading-as-mitigation-against.patch

6 years agoaufs5.x-rcN standalone patch
J. R. Okajima [Sat, 3 Aug 2019 14:41:50 +0000 (23:41 +0900)]
aufs5.x-rcN standalone patch

Origin: https://github.com/sfjro/aufs5-standalone/tree/3326ef6942b5e40f0ecc8248a6a77002d942ea7d
Bug-Debian: https://bugs.debian.org/541828

Patch headers added by debian/bin/genpatch-aufs

SPDX-License-Identifier: GPL-2.0
aufs5.x-rcN standalone patch

Gbp-Pq: Topic features/all/aufs5
Gbp-Pq: Name aufs5-standalone.patch

6 years agoaufs5.x-rcN mmap patch
J. R. Okajima [Sat, 3 Aug 2019 14:41:50 +0000 (23:41 +0900)]
aufs5.x-rcN mmap patch

Origin: https://github.com/sfjro/aufs5-standalone/tree/3326ef6942b5e40f0ecc8248a6a77002d942ea7d
Bug-Debian: https://bugs.debian.org/541828

Patch headers added by debian/bin/genpatch-aufs

SPDX-License-Identifier: GPL-2.0
aufs5.x-rcN mmap patch

Gbp-Pq: Topic features/all/aufs5
Gbp-Pq: Name aufs5-mmap.patch

6 years agoaufs5.x-rcN base patch
J. R. Okajima [Sat, 3 Aug 2019 14:41:50 +0000 (23:41 +0900)]
aufs5.x-rcN base patch

Origin: https://github.com/sfjro/aufs5-standalone/tree/3326ef6942b5e40f0ecc8248a6a77002d942ea7d
Bug-Debian: https://bugs.debian.org/541828

Patch headers added by debian/bin/genpatch-aufs

SPDX-License-Identifier: GPL-2.0
aufs5.x-rcN base patch

Gbp-Pq: Topic features/all/aufs5
Gbp-Pq: Name aufs5-base.patch

6 years agofirmware_class: Refer to Debian wiki page when logging missing firmware
Ben Hutchings [Mon, 12 Mar 2018 01:14:03 +0000 (01:14 +0000)]
firmware_class: Refer to Debian wiki page when logging missing firmware

Bug-Debian: https://bugs.debian.org/888405
Forwarded: not-needed

If firmware loading fails due to a missing file, log a second error
message referring to our wiki page about firmware.  This will explain
why some firmware is in non-free, or can't be packaged at all.  Only
do this once per boot.

Do something similar in the radeon and amdgpu drivers, where we have
an early check to avoid failing at a point where we cannot display
anything.

Gbp-Pq: Topic debian
Gbp-Pq: Name firmware_class-refer-to-debian-wiki-firmware-page.patch

6 years agoradeon, amdgpu: Firmware is required for DRM and KMS on R600 onward
Ben Hutchings [Tue, 8 Jan 2013 03:25:52 +0000 (03:25 +0000)]
radeon, amdgpu: Firmware is required for DRM and KMS on R600 onward

Bug-Debian: https://bugs.debian.org/607194
Bug-Debian: https://bugs.debian.org/607471
Bug-Debian: https://bugs.debian.org/610851
Bug-Debian: https://bugs.debian.org/627497
Bug-Debian: https://bugs.debian.org/632212
Bug-Debian: https://bugs.debian.org/637943
Bug-Debian: https://bugs.debian.org/649448
Bug-Debian: https://bugs.debian.org/697229
Forwarded: no

radeon requires firmware/microcode for the GPU in all chips, but for
newer chips (apparently R600 'Evergreen' onward) it also expects
firmware for the memory controller and other sub-blocks.

radeon attempts to gracefully fall back and disable some features if
the firmware is not available, but becomes unstable - the framebuffer
and/or system memory may be corrupted, or the display may stay black.

Therefore, perform a basic check for the existence of
/lib/firmware/{radeon,amdgpu} when a device is probed, and abort if it
is missing, except for the pre-R600 case.

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch

6 years agofirmware: Remove redundant log messages from drivers
Ben Hutchings [Sun, 9 Dec 2012 16:40:31 +0000 (16:40 +0000)]
firmware: Remove redundant log messages from drivers

Forwarded: no

Now that firmware_class logs every success and failure consistently,
many other log messages can be removed from drivers.

This will probably need to be split up into multiple patches prior to
upstream submission.

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name firmware-remove-redundant-log-messages-from-drivers.patch

6 years agofirmware_class: Log every success and failure against given device
Ben Hutchings [Sun, 9 Dec 2012 16:02:00 +0000 (16:02 +0000)]
firmware_class: Log every success and failure against given device

Forwarded: no

The hundreds of users of request_firmware() have nearly as many
different log formats for reporting failures.  They also have only the
vaguest hint as to what went wrong; only firmware_class really knows
that.  Therefore, add specific log messages for the failure modes that
aren't currently logged.

In case of a driver that tries multiple names, this may result in the
impression that it failed to initialise.  Therefore, also log successes.

This makes many error messages in drivers redundant, which will be
removed in later patches.

This does not cover the case where we fall back to a user-mode helper
(which is no longer enabled in Debian).

NOTE: hw-detect will depend on the "firmware: failed to load %s (%d)\n"
format to detect missing firmware.

Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name firmware_class-log-every-success-and-failure.patch

6 years agoiwlwifi: Do not request unreleased firmware for IWL6000
Ben Hutchings [Sun, 19 Jan 2020 09:22:58 +0000 (09:22 +0000)]
iwlwifi: Do not request unreleased firmware for IWL6000

Bug-Debian: https://bugs.debian.org/689416
Forwarded: not-needed

The iwlwifi driver currently supports firmware API versions 4-6 for
these devices.  It will request the file for the latest supported
version and then fall back to earlier versions.  However, the latest
version that has actually been released is 4, so we expect the
requests for versions 6 and then 5 to fail.

The installer appears to report any failed request, and it is probably
not easy to detect that this particular failure is harmless.  So stop
requesting the unreleased firmware.

Gbp-Pq: Topic debian
Gbp-Pq: Name iwlwifi-do-not-request-unreleased-firmware.patch

6 years agoaf9005: Use request_firmware() to load register init script
Ben Hutchings [Mon, 24 Aug 2009 22:19:58 +0000 (23:19 +0100)]
af9005: Use request_firmware() to load register init script

Forwarded: no

Read the register init script from the Windows driver.  This is sick
but should avoid the potential copyright infringement in distributing
a version of the script which is directly derived from the driver.

Gbp-Pq: Topic features/all
Gbp-Pq: Name drivers-media-dvb-usb-af9005-request_firmware.patch

6 years agoandroid: Enable building ashmem and binder as modules
Ben Hutchings [Fri, 22 Jun 2018 16:27:00 +0000 (17:27 +0100)]
android: Enable building ashmem and binder as modules

Bug-Debian: https://bugs.debian.org/901492

We want to enable use of the Android ashmem and binder drivers to
support Anbox, but they should not be built-in as that would waste
resources and increase security attack surface on systems that don't
need them.

- Add a MODULE_LICENSE declaration to ashmem
- Change the Makefiles to build each driver as an object with the
  "_linux" suffix (which is what Anbox expects)
- Change config symbol types to tristate

Gbp-Pq: Topic debian
Gbp-Pq: Name android-enable-building-ashmem-and-binder-as-modules.patch

6 years agoExport symbols needed by Android drivers
Ben Hutchings [Tue, 26 Jun 2018 15:59:01 +0000 (16:59 +0100)]
Export symbols needed by Android drivers

Bug-Debian: https://bugs.debian.org/901492

We want to enable use of the Android ashmem and binder drivers to
support Anbox, but they should not be built-in as that would waste
resources and increase security attack surface on systems that don't
need them.

Export the currently un-exported symbols they depend on.

Gbp-Pq: Topic debian
Gbp-Pq: Name export-symbols-needed-by-android-drivers.patch

6 years agowireless: Add Debian wireless-regdb certificates
Ben Hutchings [Fri, 13 Apr 2018 19:10:28 +0000 (20:10 +0100)]
wireless: Add Debian wireless-regdb certificates

Forwarded: not-needed

This hex dump is generated using:

{
    for cert in debian/certs/wireless-regdb-*.pem; do
        openssl x509 -in $cert -outform der;
    done
} | hexdump -v -e '1/1 "0x%.2x," "\n"' > net/wireless/certs/debian.hex

Gbp-Pq: Topic debian
Gbp-Pq: Name wireless-add-debian-wireless-regdb-certificates.patch

6 years agoInstall perf scripts non-executable
Bastian Blank [Fri, 7 Oct 2011 20:37:52 +0000 (21:37 +0100)]
Install perf scripts non-executable

Forwarded: no

[bwh: Forward-ported to 4.13]

Gbp-Pq: Topic debian
Gbp-Pq: Name tools-perf-install.patch

6 years agoCreate manpages and binaries including the version
Bastian Blank [Mon, 26 Sep 2011 12:53:12 +0000 (13:53 +0100)]
Create manpages and binaries including the version

Forwarded: no

[bwh: Fix version insertion in perf man page cross-references and perf
man page title.  Install bash_completion script for perf with a
version-dependent name.  And do the same for trace.]

Gbp-Pq: Topic debian
Gbp-Pq: Name tools-perf-version.patch

6 years ago[sh4] Fix uImage build
Nobuhiro Iwamatsu [Sun, 19 Jan 2020 09:22:58 +0000 (09:22 +0000)]
[sh4] Fix uImage build

Bug-Debian: https://bugs.debian.org/569034
Forwarded: not-needed

[bwh: This was added without a description, but I think it is done
 only to avoid a build-dependency on u-boot-tools.]

Gbp-Pq: Topic debian
Gbp-Pq: Name arch-sh4-fix-uimage-build.patch

6 years agoDisable uImage generation for mips generic
YunQiang Su [Mon, 14 May 2018 08:16:18 +0000 (16:16 +0800)]
Disable uImage generation for mips generic

Forwarded: not-needed

MIPS generic trys to generate uImage when build, which then ask for
u-boot-tools.

Gbp-Pq: Topic debian
Gbp-Pq: Name mips-boston-disable-its.patch

6 years ago[PATCH] Partially revert "MIPS: Add -Werror to arch/mips/Kbuild"
Ben Hutchings [Mon, 13 Sep 2010 01:16:18 +0000 (02:16 +0100)]
[PATCH] Partially revert "MIPS: Add -Werror to arch/mips/Kbuild"

Forwarded: not-needed

This reverts commits 66f9ba101f54bda63ab1db97f9e9e94763d0651b and
5373633cc9253ba82547473e899cab141c54133e.

We really don't want to add -Werror anywhere.

Gbp-Pq: Topic debian
Gbp-Pq: Name mips-disable-werror.patch

6 years agoHardcode arch script output
dann frazier [Mon, 26 Mar 2007 22:30:51 +0000 (16:30 -0600)]
Hardcode arch script output

Bug-Debian: https://bugs.debian.org/392592
Forwarded: not-needed

Here's a patch that simply uses hardcoded definitions instead of
doing the dynamic tests that require architecture-specific scripts.

I don't particularly like this approach because it restricts
portability and diverts from upstream. But, it is simpler, and this
really needs to be fixed somehow before etch (along with a rebuild of
linux-modules-extra-2.6), so I'm willing to live with it if my other
patch is deemed unacceptable.

My primary concern is that, in the future, the output of these scripts
will change and we (or our successors) will either not notice or
forget to update the hardcoded values.

Including the scripts in linux-kbuild will avoid this manual step
altogether, and allow for the possibility of other archs to provide
their own scripts in the future.

Gbp-Pq: Topic debian
Gbp-Pq: Name ia64-hardcode-arch-script-output.patch

6 years agokbuild: Make the toolchain variables easily overwritable
Bastian Blank [Sun, 22 Feb 2009 14:39:35 +0000 (15:39 +0100)]
kbuild: Make the toolchain variables easily overwritable

Forwarded: not-needed

Allow make variables to be overridden for each flavour by a file in
the build tree, .kernelvariables.

We currently use this for ARCH, KERNELRELEASE, CC, and in some cases
also CROSS_COMPILE, KCFLAGS.

This file can only be read after we establish the build tree, and all
use of $(ARCH) needs to be moved after this.

[bwh: Updated for 5.3: include .kernelvariables from current directory
 rather than using undefined $(obj).]

Gbp-Pq: Topic debian
Gbp-Pq: Name kernelvariables.patch

6 years agoMake mkcompile_h accept an alternate timestamp string
Ben Hutchings [Tue, 12 May 2015 18:29:22 +0000 (19:29 +0100)]
Make mkcompile_h accept an alternate timestamp string

Forwarded: not-needed

We want to include the Debian version in the utsname::version string
instead of a full timestamp string.  However, we still need to provide
a standard timestamp string for gen_initramfs_list.sh to make the
kernel image reproducible.

Make mkcompile_h use $KBUILD_BUILD_VERSION_TIMESTAMP in preference to
$KBUILD_BUILD_TIMESTAMP.

Gbp-Pq: Topic debian
Gbp-Pq: Name uname-version-timestamp.patch

6 years agoInclude package version along with kernel release in stack traces
Ben Hutchings [Tue, 24 Jul 2012 02:13:10 +0000 (03:13 +0100)]
Include package version along with kernel release in stack traces

Forwarded: not-needed

For distribution binary packages we assume
$DISTRIBUTION_OFFICIAL_BUILD, $DISTRIBUTOR and $DISTRIBUTION_VERSION
are set.

Gbp-Pq: Topic debian
Gbp-Pq: Name version.patch

6 years agoDocumentation: Fix broken link to CIPSO draft
Ben Hutchings [Sat, 24 Aug 2019 18:00:41 +0000 (19:00 +0100)]
Documentation: Fix broken link to CIPSO draft

Forwarded: not-needed

We exclude the CIPSO draft text as its licence is not DFSG compliant.
Link to the IETF's online version instead.

Gbp-Pq: Topic debian/dfsg
Gbp-Pq: Name documentation-fix-broken-link-to-cipso-draft.patch

6 years agovideo: Remove nvidiafb and rivafb
Ben Hutchings [Sat, 2 Jun 2012 18:53:38 +0000 (19:53 +0100)]
video: Remove nvidiafb and rivafb

Bug-Debian: https://bugs.debian.org/383481
Forwarded: no

These drivers contain register programming code provided by the
hardware vendor that appears to have been deliberately obfuscated.
This is arguably not the preferred form for modification.

These drivers are also largely redundant with nouveau.  The RIVA 128
(NV3) is not supported by nouveau but is about 15 years old and
probably discontinued 10 years ago.

Gbp-Pq: Topic debian/dfsg
Gbp-Pq: Name video-remove-nvidiafb-and-rivafb.patch

6 years agoAdd removal patches for: 3c359, smctr, keyspan, cops
Frederik Schüler [Fri, 5 Jan 2007 15:55:24 +0000 (15:55 +0000)]
Add removal patches for: 3c359, smctr, keyspan, cops

Forwarded: not-needed

Gbp-Pq: Topic debian/dfsg
Gbp-Pq: Name drivers-net-appletalk-cops.patch

6 years agovs6624: mark as broken
Ben Hutchings [Sun, 27 May 2012 00:56:58 +0000 (01:56 +0100)]
vs6624: mark as broken

Forwarded: not-needed

Gbp-Pq: Topic debian/dfsg
Gbp-Pq: Name vs6624-disable.patch

6 years agodvb-usb-af9005: mark as broken
Ben Hutchings [Mon, 17 Aug 2009 01:45:41 +0000 (02:45 +0100)]
dvb-usb-af9005: mark as broken

Forwarded: not-needed

Gbp-Pq: Topic debian/dfsg
Gbp-Pq: Name drivers-media-dvb-dvb-usb-af9005-disable.patch

6 years agoRemove microcode patches for mgsuvd (not enabled in Debian configs)
Ben Hutchings [Mon, 13 Apr 2009 16:34:00 +0000 (17:34 +0100)]
Remove microcode patches for mgsuvd (not enabled in Debian configs)

Forwarded: not-needed

Gbp-Pq: Topic debian/dfsg
Gbp-Pq: Name arch-powerpc-platforms-8xx-ucode-disable.patch

6 years agoTweak gitignore for Debian pkg-kernel using git svn.
Ian Campbell [Thu, 17 Jan 2013 08:55:21 +0000 (08:55 +0000)]
Tweak gitignore for Debian pkg-kernel using git svn.

Forwarded: not-needed

[bwh: Tweak further for pure git]

Gbp-Pq: Topic debian
Gbp-Pq: Name gitignore.patch

6 years agolinux (5.4.13-1) unstable; urgency=medium
Salvatore Bonaccorso [Sun, 19 Jan 2020 09:22:58 +0000 (09:22 +0000)]
linux (5.4.13-1) unstable; urgency=medium

  * New upstream stable update:
    https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.9
    - nvme_fc: add module to ops template to allow module references
    - nvme-fc: fix double-free scenarios on hw queues
    - drm/amdgpu: add check before enabling/disabling broadcast mode
    - drm/amdgpu: add header line for power profile on Arcturus
    - drm/amdgpu: add cache flush workaround to gfx8 emit_fence
    - nvme/pci: Fix write and poll queue types
    - nvme/pci: Fix read queue count
    - [armhf] iio: st_accel: Fix unused variable warning
    - PM / devfreq: Fix devfreq_notifier_call returning errno
    - PM / devfreq: Set scaling_max_freq to max on OPP notifier error
    - PM / devfreq: Don't fail devfreq_dev_release if not in list
    - afs: Fix afs_find_server lookups for ipv4 peers
    - afs: Fix SELinux setting security label on /afs
    - RDMA/cma: add missed unregister_pernet_subsys in init failure
    - rxe: correctly calculate iCRC for unaligned payloads
    - scsi: lpfc: Fix memory leak on lpfc_bsg_write_ebuf_set func
    - scsi: qla2xxx: Use explicit LOGO in target mode
    - scsi: qla2xxx: Drop superfluous INIT_WORK of del_work
    - scsi: qla2xxx: Don't call qlt_async_event twice
    - scsi: qla2xxx: Fix PLOGI payload and ELS IOCB dump length
    - scsi: qla2xxx: Configure local loop for N2N target
    - scsi: qla2xxx: Send Notify ACK after N2N PLOGI
    - scsi: qla2xxx: Don't defer relogin unconditonally
    - scsi: qla2xxx: Ignore PORT UPDATE after N2N PLOGI
    - scsi: iscsi: qla4xxx: fix double free in probe
    - scsi: libsas: stop discovering if oob mode is disconnected
      (CVE-2019-19965)
    - scsi: iscsi: Avoid potential deadlock in iscsi_if_rx func
    - [x86] staging/wlan-ng: add CRC32 dependency in Kconfig
    - drm/nouveau: Move the declaration of struct nouveau_conn_atom up a bit
    - drm/nouveau: Fix drm-core using atomic code-paths on pre-nv50 hardware
    - drm/nouveau/kms/nv50-: fix panel scaling
    - usb: gadget: fix wrong endpoint desc
    - net: make socket read/write_iter() honor IOCB_NOWAIT
    - afs: Fix mountpoint parsing
    - afs: Fix creation calls in the dynamic root to fail with EOPNOTSUPP
    - raid5: need to set STRIPE_HANDLE for batch head
    - md: raid1: check rdev before reference in raid1_sync_request func
    - [s390x] cpum_sf: Adjust sampling interval to avoid hitting sample limits
    - [s390x] cpum_sf: Avoid SBD overflow condition in irq handler
    - RDMA/counter: Prevent auto-binding a QP which are not tracked with res
    - IB/mlx4: Follow mirror sequence of device add during device removal
    - IB/mlx5: Fix steering rule of drop and count
    - xen-blkback: prevent premature module unload
    - xen/balloon: fix ballooned page accounting without hotplug enabled
    - PM / hibernate: memory_bm_find_bit(): Tighten node optimisation
    - ALSA: hda/realtek - Add Bass Speaker and fixed dac for bass speaker
    - ALSA: hda/realtek - Enable the bass speaker of ASUS UX431FLC
    - PCI: Add a helper to check Power Resource Requirements _PR3 existence
    - ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a
      driver
    - PCI: Fix missing inline for pci_pr3_present()
    - ALSA: hda - fixup for the bass speaker on Lenovo Carbon X1 7th gen
    - tcp: fix data-race in tcp_recvmsg()
    - shmem: pin the file in shmem_fault() if mmap_sem is dropped
    - taskstats: fix data-race
    - ALSA: hda - Downgrade error message for single-cmd fallback
    - netfilter: nft_tproxy: Fix port selector on Big Endian
    - block: add bio_truncate to fix guard_bio_eod
    - mm: drop mmap_sem before calling balance_dirty_pages() in write fault
    - ALSA: ice1724: Fix sleep-in-atomic in Infrasonic Quartet support code
    - ALSA: usb-audio: fix set_format altsetting sanity check
    - ALSA: usb-audio: set the interface format after resume on Dell WD19
    - ALSA: hda - Apply sync-write workaround to old Intel platforms, too
    - ALSA: hda/realtek - Add headset Mic no shutup for ALC283
    - [arm64,armhf] drm/sun4i: hdmi: Remove duplicate cleanup calls
    - [mips*] BPF: Disable MIPS32 eBPF JIT
    - [mips*] BPF: eBPF JIT: check for MIPS ISA compliance in Kconfig
    - [mips*] Avoid VDSO ABI breakage due to global register variable
    - media: pulse8-cec: fix lost cec_transmit_attempt_done() call
    - media: cec: CEC 2.0-only bcast messages were ignored
    - media: cec: avoid decrementing transmit_queue_sz if it is 0
    - media: cec: check 'transmit_in_progress', not 'transmitting'
    - mm/memory_hotplug: shrink zones when offlining memory
    - mm/zsmalloc.c: fix the migrated zspage statistics.
    - memcg: account security cred as well to kmemcg
    - mm: move_pages: return valid node id in status if the page is already on
      the target node
    - mm/oom: fix pgtables units mismatch in Killed process message
    - ocfs2: fix the crash due to call ocfs2_get_dlm_debug once less
    - [x86,arm64] pstore/ram: Write new dumps to start of recycled zones
    - [x86,arm64] pstore/ram: Fix error-path memory leak in
      persistent_ram_new() callers
    - locks: print unsigned ino in /proc/locks
    - seccomp: Check that seccomp_notif is zeroed out by the user
    - Btrfs: fix infinite loop during nocow writeback due to race
    - compat_ioctl: block: handle Persistent Reservations
    - compat_ioctl: block: handle BLKREPORTZONE/BLKRESETZONE
    - compat_ioctl: block: handle BLKGETZONESZ/BLKGETNRZONES
    - bpf: Fix precision tracking for unbounded scalars
    - ata: libahci_platform: Export again ahci_platform_<en/dis>able_phys()
    - libata: Fix retrieving of active qcs
    - gpiolib: fix up emulated open drain outputs
    - [riscv64] clocksource: riscv: add notrace to riscv_sched_clock
    - [riscv64] ftrace: correct the condition logic in function graph tracer
    - tracing: Fix lock inversion in trace_event_enable_tgid_record()
    - tracing: Avoid memory leak in process_system_preds()
    - tracing: Have the histogram compare functions convert to u64 first
    - tracing: Fix endianness bug in histogram trigger
    - io_uring: use current task creds instead of allocating a new one
    - mm/gup: fix memory leak in __gup_benchmark_ioctl
    - apparmor: fix aa_xattrs_match() may sleep while holding a RCU lock
    - dmaengine: virt-dma: Fix access after free in vchan_complete()
    - [i386] ALSA: cs4236: fix error return comparison of an unsigned integer
    - ALSA: pcm: Yet another missing check of non-cached buffer type
    - ALSA: firewire-motu: Correct a typo in the clock proc string
    - scsi: lpfc: Fix rpi release when deleting vport
    - exit: panic before exit_mm() on global init exit
    - [arm64] Revert support for execute-only user mappings
    - ftrace: Avoid potential division by zero in function profiler
    - [arm64] drm/msm: include linux/sched/task.h
    - PM / devfreq: Check NULL governor in available_governors_show
    - sunrpc: fix crash when cache_head become valid before update
    - nfsd4: fix up replay_matches_cache()
    - [powerpc*] Chunk calls to flush_dcache_range in arch_*_memory
    - [x86,arm64] HID: i2c-hid: Reset ALPS touchpads on resume
    - net/sched: annotate lockless accesses to qdisc->empty
    - kernel/module.c: wakeup processes in module_wq on module unload
    - ACPI: sysfs: Change ACPI_MASKABLE_GPE_MAX to 0x100
    - perf callchain: Fix segfault in thread__resolve_callchain_sample()
    - [amd64] iommu/vt-d: Remove incorrect PSI capability check
    - cifs: Fix potential softlockups while refreshing DFS cache
    - xfs: don't check for AG deadlock for realtime files in bunmapi
    - [x86] platform/x86: pmc_atom: Add Siemens CONNECT X300 to
      critclk_systems DMI table
    - netfilter: nf_queue: enqueue skbs with NULL dst
    - [arm64,armhf] regulator: axp20x: Fix axp20x_set_ramp_delay
    - [arm64,armhf] regulator: axp20x: Fix AXP22x ELDO2 regulator enable
      bitmask
    - [powerpc*] mm: Mark get_slice_psize() & slice_addr_is_low() as notrace
    - Bluetooth: btusb: fix PM leak in error case of setup
    - Bluetooth: delete a stray unlock
    - Bluetooth: Fix memory leak in hci_connect_le_scan
    - [arm64] dts: meson-gxl-s905x-khadas-vim: fix uart_A bluetooth node
    - [arm64] dts: meson-gxm-khadas-vim2: fix uart_A bluetooth node
    - media: flexcop-usb: ensure -EIO is returned on error condition
    - media: usb: fix memory leak in af9005_identify_state (CVE-2019-18809)
    - [arm64] dts: meson: odroid-c2: Disable usb_otg bus to avoid power failed
      warning
    - [arm64] tty: serial: msm_serial: Fix lockup for sysrq and oops
    - cifs: Fix lookup of root ses in DFS referral cache
    - fs: cifs: Fix atime update check vs mtime
    - fix compat handling of FICLONERANGE, FIDEDUPERANGE and FS_IOC_FIEMAP
    - ath9k_htc: Modify byte order for an error message
    - ath9k_htc: Discard undersized packets
    - [x86] drm/i915/execlists: Fix annotation for decoupling virtual request
    - xfs: periodically yield scrub threads to the scheduler
    - net: add annotations on hh->hh_len lockless accesses
    - ubifs: ubifs_tnc_start_commit: Fix OOB in layout_in_gaps
    - btrfs: get rid of unique workqueue helper functions
    - Btrfs: only associate the locked page with one async_chunk struct
    - [s390x] smp: fix physical to logical CPU map for SMT
    - mm/sparse.c: mark populate_section_memmap as __meminit
    - xen/blkback: Avoid unmapping unmapped grant pages
    - lib/ubsan: don't serialize UBSAN report
    - [x86] perf/x86/intel/bts: Fix the use of page_private()
    - net: annotate lockless accesses to sk->sk_pacing_shift
    - mm/hugetlb: defer freeing of huge pages if in non-task context
    https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.10
    - [powerpc*] pmem: Fix kernel crash due to wrong range value usage in
      flush_dcache_range
    https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.11
    - bpf: Fix passing modified ctx to ld/abs/ind instruction
    - [x86] ASoC: rt5682: fix i2c arbitration lost issue
    - spi: pxa2xx: Add support for Intel Jasper Lake
    - regulator: fix use after free issue
    - ASoC: max98090: fix possible race conditions
    - gpio: Handle counting of Freescale chipselects
    - netfilter: ctnetlink: netns exit must wait for callbacks
    - [x86] intel: Disable HPET on Intel Ice Lake platforms
    - netfilter: nf_tables_offload: Check for the NETDEV_UNREGISTER event
    - mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame()
      (CVE-2019-14901)
    - regulator: core: fix regulator_register() error paths to properly
      release rdev
    - [x86] efi: Update e820 with reserved EFI boot services data to fix kexec
      breakage
    - [x86] ASoC: Intel: bytcr_rt5640: Update quirk for Teclast X89
    - efi/gop: Return EFI_NOT_FOUND if there are no usable GOPs
    - efi/gop: Return EFI_SUCCESS if a usable GOP was found
    - efi/gop: Fix memory leak in __gop_query32/64()
    - [x86,arm64] efi/earlycon: Remap entire framebuffer after page
      initialization
    - netfilter: uapi: Avoid undefined left-shift in xt_sctp.h
    - netfilter: nft_set_rbtree: bogus lookup/get on consecutive elements in
      named sets
    - netfilter: nf_tables: validate NFT_SET_ELEM_INTERVAL_END
    - netfilter: nf_tables: validate NFT_DATA_VALUE after nft_data_init()
    - netfilter: nf_tables: skip module reference count bump on object updates
    - netfilter: nf_tables_offload: return EOPNOTSUPP if rule specifies no
      actions
    - [arm64] spi: spi-cavium-thunderx: Add missing pci_release_regions()
    - [arm*] reset: Do not register resource data for missing resets
    - [x86] ASoC: topology: Check return value for snd_soc_add_dai_link()
    - [x86] ASoC: topology: Check return value for soc_tplg_pcm_create()
    - [x86] ASoC: SOF: loader: snd_sof_fw_parse_ext_data log warning on
      unknown header
    - [x86] ASoC: SOF: Intel: split cht and byt debug window sizes
    - [armhf] dts: am335x-sancloud-bbe: fix phy mode
    - [riscv64] bpf, riscv: Limit to 33 tail calls
    - [mips64el,mipsel] bpf, mips: Limit to 33 tail calls
    - perf header: Fix false warning when there are no duplicate cache entries
    - [armhf] spi: spi-ti-qspi: Fix a bug when accessing non default CS
    - [armhf] bus: ti-sysc: Fix missing reset delay handling
    - clk: walk orphan list on clock provider registration
    - mac80211: fix TID field in monitor mode transmit
    - cfg80211: fix double-free after changing network namespace
    - pinctrl: pinmux: fix a possible null pointer in
      pinmux_can_be_used_for_gpio
    - [powerpc*] Ensure that swiotlb buffer is allocated from low memory
    - btrfs: Fix error messages in qgroup_rescan_init
    - Btrfs: fix cloning range with a hole when using the NO_HOLES feature
    - [powerpc*] vcpu: Assume dedicated processors as non-preempt
    - [powerpc*] spinlocks: Include correct header for static key
    - btrfs: handle error in btrfs_cache_block_group
    - Btrfs: fix hole extent items with a zero size after range cloning
    - [powerpc*] ocxl: Fix potential memory leak on context creation
    - bpf: Clear skb->tstamp in bpf_redirect when necessary
    - bnx2x: Do not handle requests from VFs after parity
    - bnx2x: Fix logic to get total no. of PFs per engine
    - cxgb4: Fix kernel panic while accessing sge_info
    - net: usb: lan78xx: Fix error message format specifier
    - [hppa/parisc] add missing __init annotation
    - rfkill: Fix incorrect check to avoid NULL pointer dereference
    - staging: axis-fifo: add unspecified HAS_IOMEM dependency
    - [arm*] iommu/iova: Init the struct iova to fix the possible memleak
    - [x86] perf/x86: Fix potential out-of-bounds access
    - [x86] perf/x86/intel: Fix PT PMI handling
    - sched/psi: Fix sampling error and rare div0 crashes with cgroups and
      high uptime
    - psi: Fix a division error in psi poll()
    - [x86] usb: typec: fusb302: Fix an undefined reference to
      'extcon_get_state'
    - block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT
    - fs: avoid softlockups in s_inodes iterators
    - fs: call fsnotify_sb_delete after evict_inodes
    - [arm64] iommu/dma: Relax locking in iommu_dma_prepare_msi()
    - io_uring: don't wait when under-submitting
    - clk: Move clk_core_reparent_orphans() under CONFIG_OF
    - [arm64,armhf] net: stmmac: Determine earlier the size of RX buffer
    - [arm64,armhf] net: stmmac: Do not accept invalid MTU values
    - [arm64,armhf] net: stmmac: xgmac: Clear previous RX buffer size
    - [arm64,armhf] net: stmmac: RX buffer size must be 16 byte aligned
    - [arm64,armhf] net: stmmac: Always arm TX Timer at end of transmission
      start
    - xsk: Add rcu_read_lock around the XSK wakeup
    - net/mlx5e: Fix concurrency issues between config flow and XSK
    - net/i40e: Fix concurrency issues between config flow and XSK
    - net/ixgbe: Fix concurrency issues between config flow and XSK
    - [arm64] cpu_errata: Add Hisilicon TSV110 to spectre-v2 safe list
    - block: Fix a lockdep complaint triggered by request queue flushing
    - [s390x] dasd/cio: Interpret ccw_device_get_mdc return value correctly
    - [s390x] dasd: fix memleak in path handling error case
    - block: fix memleak when __blk_rq_map_user_iov() is failed
    - sbitmap: only queue kyber's wait callback if not already active
    - [s390x] qeth: handle error due to unsupported transport mode
    - [s390x] qeth: fix promiscuous mode after reset
    - [s390x] qeth: don't return -ENOTSUPP to userspace
    - llc2: Fix return statement of llc_stat_ev_rx_null_dsap_xid_c (and
      _test_c)
    - [x86] hv_netvsc: Fix unwanted rx_table reset
    - gtp: fix bad unlock balance in gtp_encap_enable_socket
    - macvlan: do not assume mac_header is set in macvlan_broadcast()
    - [arm64,armhf] net: dsa: mv88e6xxx: Preserve priority when setting CPU
      port.
    - [armhf] net: freescale: fec: Fix ethtool -d runtime PM
    - [arm64,armhf] net: stmmac: dwmac-sun8i: Allow all RGMII modes
    - [arm64,armhf] net: stmmac: dwmac-sunxi: Allow all RGMII modes
    - [arm64,armhf] net: stmmac: Fixed link does not need MDIO Bus
    - net: usb: lan78xx: fix possible skb leak
    - pkt_sched: fq: do not accept silly TCA_FQ_QUANTUM
    - sch_cake: avoid possible divide by zero in cake_enqueue()
    - sctp: free cmd->obj.chunk for the unprocessed SCTP_CMD_REPLY
    - tcp: fix "old stuff" D-SACK causing SACK to be treated as D-SACK
    - vxlan: fix tos value before xmit
    - net: sch_prio: When ungrafting, replace with FIFO
    - vlan: fix memory leak in vlan_dev_set_egress_priority
    - vlan: vlan_changelink() should propagate errors
    - [arm64,riscv64] macb: Don't unregister clks unconditionally
    - net/mlx5: Move devlink registration before interfaces load
    - [arm64,armhf] net: dsa: mv88e6xxx: force cmode write on 6141/6341
    - net/mlx5e: Always print health reporter message to dmesg
    - net/mlx5: DR, No need for atomic refcount for internal SW steering
      resources
    - net/mlx5e: Fix hairpin RSS table size
    - net/mlx5: DR, Init lists that are used in rule's member
    - [arm64,armhf] usb: dwc3: gadget: Fix request complete check
    - USB: core: fix check for duplicate endpoints
    - USB: serial: option: add Telit ME910G1 0x110a composition
    - usb: missing parentheses in USE_NEW_SCHEME
    https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.12
    - chardev: Avoid potential use-after-free in 'chrdev_open()'
    - i2c: fix bus recovery stop mode timing
    - [x86] powercap: intel_rapl: add NULL pointer check to
      rapl_mmio_cpu_online()
    - [arm64,armhf] usb: chipidea: host: Disable port power only if previously
      enabled
    - ALSA: usb-audio: Apply the sample rate quirk for Bose Companion 5
    - ALSA: hda/realtek - Add new codec supported for ALCS1200A
    - ALSA: hda/realtek - Set EAPD control to default for ALC222
    - ALSA: hda/realtek - Add quirk for the bass speaker on Lenovo Yoga X1 7th
      gen
    - tpm: Revert "tpm_tis: reserve chip for duration of tpm_tis_core_init"
    - tpm: Revert "tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for
      interrupts"
    - tpm: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's"
    - tpm: Handle negative priv->response_len in tpm_common_read()
    - [arm64,armhf] rtc: sun6i: Add support for RTC clocks on R40
    - kernel/trace: Fix do not unregister tracepoints when register
      sched_migrate_task fail
    - tracing: Have stack tracer compile when MCOUNT_INSN_SIZE is not defined
    - tracing: Change offset type to s32 in preempt/irq tracepoints
    - HID: Fix slab-out-of-bounds read in hid_field_extract
    - HID: uhid: Fix returning EPOLLOUT from uhid_char_poll
    - HID: hidraw: Fix returning EPOLLOUT from hidraw_poll
    - HID: hid-input: clear unmapped usages
    - Input: add safety guards to input_set_keycode()
    - [x86] drm/i915: Add Wa_1408615072 and Wa_1407596294 to icl,ehl
    - [arm64,armhf] drm/sun4i: tcon: Set RGB DCLK min. divider based on
      hardware model
    - drm/fb-helper: Round up bits_per_pixel if possible
    - drm/dp_mst: correct the shifting in DP_REMOTE_I2C_READ
    - [x86] drm/i915: Add Wa_1407352427:icl,ehl
    - [x86] drm/i915/gt: Mark up virtual engine uabi_instance
    - [amd64] IB/hfi1: Adjust flow PSN with the correct resync_psn
    - can: kvaser_usb: fix interface sanity check
    - can: gs_usb: gs_usb_probe(): use descriptors of current altsetting
    - gpiolib: acpi: Turn dmi_system_id table into a generic quirk table
    - gpiolib: acpi: Add honor_wakeup module-option + quirk mechanism
    - pstore/ram: Regularize prz label allocation lifetime
    - [x86] staging: vt6656: set usb_set_intfdata on driver fail.
    - [x86] staging: vt6656: Fix non zero logical return of, usb_control_msg
    - USB: serial: option: add ZLP support for 0x1bc7/0x9010
    - [arm64,armhf] usb: musb: fix idling for suspend after disconnect
      interrupt
    - [arm64,armhf] usb: musb: Disable pullup at init
    - [arm64,armhf] usb: musb: dma: Correct parameter passed to IRQ handler
    - [x86] staging: comedi: adv_pci1710: fix AI channels 16-31 for PCI-1713
    - [x86] staging: vt6656: correct return of vnt_init_registers.
    - [x86] staging: vt6656: limit reg output to block size
    - staging: rtl8188eu: Add device code for TP-Link TL-WN727N v5.21
    - serdev: Don't claim unsupported ACPI serial devices
    - [amd64] iommu/vt-d: Fix adding non-PCI devices to Intel IOMMU
    - tty: link tty and port before configuring it as console
    - tty: always relink the port
    - [arm64] Move __ARCH_WANT_SYS_CLONE3 definition to uapi headers
    - [arm64] Implement copy_thread_tls
    - [arm*] Implement copy_thread_tls
    - [hppa/parisc] Implement copy_thread_tls
    - [riscv64] Implement copy_thread_tls
    - clone3: ensure copy_thread_tls is implemented
    - um: Implement copy_thread_tls
    - [x86] staging: vt6656: remove bool from vnt_radio_power_on ret
    - mwifiex: fix possible heap overflow in mwifiex_process_country_ie()
      (CVE-2019-14895)
    - mwifiex: pcie: Fix memory leak in mwifiex_pcie_alloc_cmdrsp_buf
      (CVE-2019-19056)
    - rpmsg: char: release allocated memory (CVE-2019-19053)
    - scsi: bfa: release allocated memory in case of error (CVE-2019-19066)
    - rtl8xxxu: prevent leaking urb (CVE-2019-19068)
    - ath10k: fix memory leak (CVE-2019-19078)
    - HID: hiddev: fix mess in hiddev_open()
    - USB: Fix: Don't skip endpoint descriptors with maxpacket=0
    - netfilter: arp_tables: init netns pointer in xt_tgchk_param struct
    - netfilter: conntrack: dccp, sctp: handle null timeout argument
    - netfilter: ipset: avoid null deref when IPSET_ATTR_LINENO is present
    - [x86] drm/i915/gen9: Clear residual context state on context switch
      (CVE-2019-14615)
    https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.13
    - HID: hidraw, uhid: Always report EPOLLOUT
    - [amd64] IB/hfi1: Don't cancel unused work item
    - [armhf] mtd: rawnand: stm32_fmc2: avoid to lock the CPU bus
    - [arm*] 2c: bcm2835: Store pointer to bus clock
    - ASoC: soc-core: Set dpcm_playback / dpcm_capture
    - [armhf] ASoC: stm32: spdifrx: fix inconsistent lock state
    - [armhf] ASoC: stm32: spdifrx: fix race condition in irq handler
    - [armhf] ASoC: stm32: spdifrx: fix input pin state management
    - netfilter: nft_flow_offload: fix underflow in flowtable reference
      counter
    - [armhf] mtd: onenand: omap2: Pass correct flags for prep_dma_memcpy
    - [arm64] gpio: zynq: Fix for bug in zynq_gpio_restore_context API
    - [arm64,armhf] pinctrl: meson: Fix wrong shift value when get
      drive-strength
    - [amd64] iommu/vt-d: Unlink device if failed to add to group
    - iommu: Remove device link to group on failure
    - bpf: cgroup: prevent out-of-order release of cgroup bpf
    - fs: move guard_bio_eod() after bio_set_op_attrs
    - scsi: mpt3sas: Fix double free in attach error handling
    - gpio: Fix error message on out-of-range GPIO in lookup table
    - [arm64,armhf] PM / devfreq: tegra: Add COMMON_CLK dependency
    - [arm64,armhf] drm/tegra: Fix ordering of cleanup code
    - [s390x] qeth: fix qdio teardown after early init error
    - [s390x] qeth: fix false reporting of VNIC CHAR config failure
    - [s390x] qeth: Fix vnicc_is_in_use if rx_bcast not set
    - [s390x] qeth: vnicc Fix init to default
    - [s390x] qeth: fix initialization on old HW
    - scsi: smartpqi: Update attribute name to `driver_version`
    - afs: Fix missing cell comparison in afs_test_super()
    - [x86] syscalls/x86: Wire up COMPAT_SYSCALL_DEFINE0
    - [x86] syscalls/x86: Use COMPAT_SYSCALL_DEFINE0 for IA32 (rt_)sigreturn
    - [x86] syscalls/x86: Use the correct function type for sys_ni_syscall
    - [x86] syscalls/x86: Fix function types in COND_SYSCALL
    - btrfs: simplify inode locking for RWF_NOWAIT
    - netfilter: nf_tables_offload: release flow_rule on error from commit
      path
    - netfilter: nft_meta: use 64-bit time arithmetic
    - [arm64] RDMA/hns: Prevent undefined behavior in
      hns_roce_set_user_sq_size()
    - [arm64] RDMA/hns: remove a redundant le16_to_cpu
    - [arm64] RDMA/hns: Modify return value of restrack functions
    - RDMA/counter: Prevent QP counter manual binding in auto mode
    - [arm64] RDMA/hns: Release qp resources when failed to destroy qp
    - xprtrdma: Add unique trace points for posting Local Invalidate WRs
    - xprtrdma: Connection becomes unstable after a reconnect
    - xprtrdma: Fix MR list handling
    - xprtrdma: Close window between waking RPC senders and posting Receives
    - [arm64] RDMA/hns: Fix to support 64K page for srq
    - [arm64] RDMA/hns: Bugfix for qpc/cqc timer configuration
    - RDMA/mlx5: Return proper error value
    - RDMA/srpt: Report the SCSI residual to the initiator
    - uaccess: Add non-pagefault user-space write function
    - bpf: Make use of probe_user_write in probe write helper
    - bpf: skmsg, fix potential psock NULL pointer dereference
    - libbpf: Fix Makefile' libbpf symbol mismatch diagnostic
    - afs: Fix use-after-loss-of-ref
    - afs: Fix afs_lookup() to not clobber the version on a new dentry
    - keys: Fix request_key() cache
    - scsi: enclosure: Fix stale device oops with hot replug
    - scsi: sd: Clear sdkp->protection_type if disk is reformatted without PI
    - [x86] platform/x86: asus-wmi: Fix keyboard brightness cannot be set to 0
    - [x86] platform/x86: GPD pocket fan: Use default values when wrong
      modparams are given
    - Documentation/ABI: Fix documentation inconsistency for mlxreg-io sysfs
      interfaces
    - Documentation/ABI: Add missed attribute for mlxreg-io sysfs interfaces
    - xprtrdma: Fix create_qp crash on device unload
    - xprtrdma: Fix completion wait during device removal
    - xprtrdma: Fix oops in Receive handler after device removal
    - dm: add dm-clone to the documentation index
    - scsi: ufs: Give an unique ID to each ufs-bsg
    - [arm64] crypto: cavium/nitrox - fix firmware assignment to AE cores
    - crypto: virtio - implement missing support for output IVs
    - crypto: algif_skcipher - Use chunksize instead of blocksize
    - [i386] crypto: geode-aes - convert to skcipher API and make thread-safe
    - NFSv2: Fix a typo in encode_sattr()
    - nfsd: Fix cld_net->cn_tfm initialization
    - nfsd: v4 support requires CRYPTO_SHA256
    - NFSv4.x: Handle bad/dead sessions correctly in nfs41_sequence_process()
    - NFSv4.x: Drop the slot if nfs4_delegreturn_prepare waits for
      layoutreturn
    - mei: fix modalias documentation
    - [armhf] clk: samsung: exynos5420: Preserve CPU clocks configuration
      during suspend/resume
    - clk: Fix memory leak in clk_unregister()
    - [arm64,armhf] dmaengine: dw: platform: Mark 'hclk' clock optional
    - [armhf] clk: imx: pll14xx: Fix quick switch of S/K parameter
    - rsi: fix potential null dereference in rsi_probe()
    - affs: fix a memory leak in affs_remount
    - [armhf] pinctl: ti: iodelay: fix error checking on
      pinctrl_count_index_with_args call
    - [x86] pinctrl: lewisburg: Update pin list according to v1.1v6
    - PCI: pciehp: Do not disable interrupt twice on suspend
    - Revert "drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper."
    - drm/amdgpu: cleanup creating BOs at fixed location
    - drm/amdgpu/discovery: reserve discovery data at the top of VRAM
    - scsi: sd: enable compat ioctls for sed-opal
    - gfs2: add compat_ioctl support
    - af_unix: add compat_ioctl support
    - compat_ioctl: handle SIOCOUTQNSD
    - [arm64] PCI: aardvark: Use LTSSM state to build link training flag
    - [arm64] PCI: aardvark: Fix PCI_EXP_RTCTL register configuration
    - [arm64,armhf] PCI: dwc: Fix find_next_bit() usage
    - PCI: Fix missing bridge dma_ranges resource list cleanup
    - PCI/PM: Clear PCIe PME Status even for legacy power management
    - PCI/PTM: Remove spurious "d" from granularity message
    - [powerpc*] powernv: Disable native PCIe port management
    - [mips64el,mipsel] Loongson: Fix return value of loongson_hwmon_init
    - [armhf] tty: serial: imx: use the sg count from dma_map_sg
    - [i386] tty: serial: pch_uart: correct usage of dma_unmap_sg
    - ARM: 8943/1: Fix topology setup in case of CPU hotplug for
      CONFIG_SCHED_MC
    - Revert "ubifs: Fix memory leak bug in alloc_ubifs_info() error path"
    - ubifs: Fixed missed le64_to_cpu() in journal
    - ubifs: do_kill_orphans: Fix a memory leak bug
    - mtd: spi-nor: fix silent truncation in spi_nor_read()
    - mtd: spi-nor: fix silent truncation in spi_nor_read_raw()
    - [arm64,armhf] spi: pxa2xx: Set controller->max_transfer_size in dma mode
    - iwlwifi: mvm: consider ieee80211 station max amsdu value
    - rtlwifi: Remove unnecessary NULL check in rtl_regd_init
    - iwlwifi: mvm: fix support for single antenna diversity
    - sch_cake: Add missing NLA policy entry TCA_CAKE_SPLIT_GSO
    - f2fs: fix potential overflow
    - NFSD fixing possible null pointer derefering in copy offload
    - scsi: libcxgbi: fix NULL pointer dereference in cxgbi_device_destroy()
    - scsi: target/iblock: Fix protection error with blocks greater than 512B
    - [riscv64] export flush_icache_all to modules
    - [mips64el,mipsel] cacheinfo: report shared CPU map
    - [mips64el,mipsel] Fix gettimeofday() in the vdso library
    - tomoyo: Suppress RCU warning at list_for_each_entry_rcu().
    - [arm64] drm/arm/mali: make malidp_mw_connector_helper_funcs static
    - rxrpc: Unlock new call in rxrpc_new_incoming_call() rather than the
      caller
    - rxrpc: Don't take call->user_mutex in rxrpc_new_incoming_call()
    - rxrpc: Fix missing security check on incoming calls
    - [arm64] dmaengine: k3dma: Avoid null pointer traversal
    - [s390x] qeth: lock the card while changing its hsuid
    - [amd64] ioat: ioat_alloc_ring() failure handling.
    - drm/amdgpu: enable gfxoff for raven1 refresh
    - ocfs2: call journal flush to mark journal as empty after journal
      recovery when mount

  [ Salvatore Bonaccorso ]
  * signing_templates/rules.real: Include modules.builtin.modinfo file in
    image (Closes: #948427)
  * [rt] Drop "lib/ubsan: Don't seralize UBSAN report"
  * nvme: Ignore ABI changes
  * Drop "ARM: dts: bcm283x: Fix critical trip point"
  * Drop "tracing: Do not create directories if lockdown is in affect"
  * Drop "libtraceevent: Fix lib installation with O="
  * Drop "libtraceevent: Copy pkg-config file to output folder when using O="
  * Refresh "libbpf: fix readelf output parsing on powerpc with recent
    binutils"
  * Refresh "x86: Make x32 syscall support conditional on a kernel parameter"
  * Bump ABI to 3.

  [ Ben Hutchings ]
  * f2fs: Fix crypto softdep: it uses crc32, not crc32c

[dgit import unpatched linux 5.4.13-1]